J’ai beau dire que j’ai pas le temps de poster/mettre à jour ma liste de lien, tout n’est que manipulations et calembredaines !
J’ai en effet eu le temps de passer ma soirée à regarder des vidéos explicatives d’un jeu vidéo que je ne vais probablement pas prendre : Minecraft.
En terme de gameplay, c’est assez intéressant, et les cartes sont générées de manière -je suppose- procédurale, en utilisant un procédé proche du voxel (les cubes n’étant pas en soi les plus petits éléments, je suppose que cela ne rentre plus dans ce cadre-là).
En regardant ces vidéos, donc, j’ai eu une idée saugrenue -que je met ici afin de m’en souvenir ultérieurement- :
Il serait intéressant (enfin, je doute un peu d’une possibilité d’utilisation pratique ultérieure, pour de vrai c’est plus par curiosité) de prendre une carte vierge de tout traitement humain, puis de prendre la même map transformée par les joueurs (peut-être un gestionnaire de serveur pourrait m’en fournir ?), pour mesurer la quantité “d’information” ajoutée par tout le traitement/toute les constructions des joueurs.
J’entends par là apprendre à utiliser les outils mathématiques/informatiques disponibles pour quantifier l’information d’un élément (une chaîne de caractère, une image ou dans le cas qui nous intéresse un tableau en trois dimension de nombre entiers, qui symbolisent les cubes qui constituent la carte), puis voir comment ces mêmes outils les gèrent, et voir si des constructions artificielles pourraient constituer une information en soi.
Bon, je parle en parfait béotien, vu que je ne maitrise pas les outils qui me seraient utile pour un tel traitement (à priori tout ce qui a trait à la théorie de Shannon, ou peut-être Kolmogorov), et ce ni dans la théorie ni dans la pratique (mais ce genre de tache, qui se traduit par l’étude de ce PDF sur la théorie de Shannon par exemple, se met dans une liste de chose à faire/à lire qui s’agrandit beaucoup plus vite qu’elle ne s’exécute :/)
Cette idée est dans la continuité de questionnements/idées que j’ai eu ces derniers temps, en rapport à l’information :
- D’abord, je me suis demandé si l’on pouvait compresser un nombre en le découpant en paquets de N chiffres, et en indexant ces paquets sur un nombre-univers standard (c’est tout simplement un nombre qui contient n’importe quel suite de chiffre), ou plutôt je me suis demandé quel pourrait être le coefficient de compression – pas forcement avantageux – optimal pour un nombre-univers donné ou un nombre N donné en fonction respectivement de la taille de N ou du nombre univers en question; En écrivant ces lignes, je me rends compte que le cas où N=1, avec C10 reviendrait à indexer ’0′ par ’0′, ’1′ par ’1′ etc, ce qui donne un coefficient minimal d’au pire 1 si l’on admet des cas similaires;
Reformulé, à chaque fois, au lieu d’avoir en clair les N chiffres, on saurait “Les N prochains chiffres sont trouvables à la trucmuche-ième décimale de notre nombre univers connu jusqu’à un certain point à l’avance”, chaque paquet de N décimale serait donc remplacé par le nombre trucmuche associé, ma question porte alors sur le rapport entre la longueur moyenne de trucmuche et N.
Plusieurs questions en découlent : jusqu’à quel point connait-t-on ce nombre ? Si l’on connaissait une infinité de décimales, pourrait-on trouver un N avantageux ? En plus d’être un point qui, a priori, est déjà un obstacle trop important, se pose la question du codage/décodage qui a toute les chances d’être beaucoup trop long à réaliser (source : mon pifomètre), ce serait assez drôle qu’il existe un cas, avec un N non-infini (voir même de l’ordre de fichier existants et manipulé), avec un nombre-univers idoine approché avec un nombre fini de décimal, de rapport avantageux (voir très avantageux), mais que l’algorithme pour faire la conversion serait lui inutilisable. Ce qu’il m’amène à mon deuxième point :
- Existe-t’il une équivalence entre information et quantité de calcul ?
On a une ‘information’ qui prend une certaine taille (par exemple, un fichier vidéo, ou un fichier mp3), et on le compresse (par exemple avec 7-zip), on obtient un autre fichier compressé qui contient en soi la même information que le fichier originel (on peut retrouver exactement notre fichier de départ en utilisant la décompression), néanmoins d’une taille plus petite.
Voila ma question : Quel est l’invariant (par rapport à un fichier donné) dans tout ça ? En existe t-il seulement un ? On peut je suppose considérer l’algorithme de compression/décompression comme une information en soit, à rajouter au fichier compressé, mais vu que cet algorithme a la même taille indifféremment du fait que l’on manipule un fichier texte ou un fichier vidéo, que ces deux ont des tailles différentes, que donc on a gagné plus de place avec le fichier vidéo, qu’est ce qu’on a perdu avec le fichier vidéo ?
Vu que la conversion vidéo a nécessité plus de calcul pour aboutir à un résultat, j’en déduis que pour trouver un invariant, celui-ci doit au moins contenir le fichier, l’algorithme ET la quantité minimale de calcul à effectuer (ou effectuée ???), donc je suppose que l’on peut faire une équivalence entre information et quantité de calcul, du moins entre taille utilisée pour l’information et quantité de calcul.
C’est là que tout s’emballe (je vais faire de la pure spéculation, déjà parce que c’est joli, ensuite parce que je considère la réflexion intéressante, mais franchement c’est à prendre avec des pincettes).
C’est vis-à-vis de l’algorithme que j’ai des problèmes, par exemple, si j’ai mon super film ‘Clash_of_the_Titans.avi’ (en vrai je l’ai en DVD. Je préfère mater Sam en HD), qui est basiquement un grand chiffre (encodé en binaire, mais que l’on peut très bien convertir en base décimale), et que j’ai mon algorithme de compression ad hoc “Tu échanges ’1′ avec ‘Clash_of_the_Titans.avi’, et tu laisses à l’identique les autres nombres”, alors mon fichier compressé sera simplement ’1′, mais l’algorithme de décompression, indissociable, prendra-lui au moins autant de place que mon fichier original, donc il y a bien conservation de ma quantité invariante recherchée, quelle qu’elle soit.
Maintenant, imaginons que mon algorithme soit “Tu échanges ’1′ avec ‘Clash_of_the_Titans.avi’, et ’2′ avec ‘Assurance_Sur_la_Mort.avi’, et tu laisses à l’identique les autres nombres”, ceci bien qu’on ait aucune raison de voir le second film (bon, okay, c’est bien filmé, le scénario est très bon, les doubleurs français ont fait leur boulot plus que correctement, mais ce film n’a aucun intérêt, je veux dire, il n’a même pas Sam Worthington !!!), alors notre fichier, une fois ‘compressé’, sera toujours ’1′, parce que l’algorithme va traiter ce fichier de la même manière, pourtant cet algorithme sera plus lourd en terme de taille que dans le cas précédent. En outre, il possède un ‘potentiel de décompression’ plus fort que dans le cas précédent (j’ai aucune idée de comment formaliser ce que je viens de dire, voir même si ça a simplement un sens, mais je pense que vous comprenez de quoi je veux parler), est-ce que cela signifie que la quantité invariante dans nos compression devra prendre en compte ça ?
Ou encore, plus tordu, le cas d’un algorithme de compression qui boucle, c’est à dire qui tourne à l’infini et ne donne pas de résultat. À ce moment-là, il y a t-il toujours un invariant ? Je suppose qu’il n’y a pas de résultat, mais une quantité infinie de calcul, ce qui pourrait d’une manière ou d’une autre rééquilibrer tout cela.
Ayant fait un saut dans ma prépa, j’ai pu en parler avec mon ancien professeur de math, au demeurant très sympa, qui m’a dit pour le 1er points que l’algorithme était surement trop complexe/trop peu efficace, avec un taux pas intéressant, et pour le deuxième que ces considérations avait déjà donné lieu à de -très jolies- théories, les noms de Kolmogorov et Shannon (cités plus haut) à l’appui.
C’est à la fois flattant, rageant, et déstabilisant de se dire que des idées personnelles qui semblait un tantinet originales ne le sont pas. A vrai dire, je me doutais bien que des gens avaient déjà réfléchi à la question, et j’avais plutôt en tête de lui demander à quels théories ces considérations se rattachent (je me souviens plus si je lui ai demandé comme ça ou en le présentant comme quelque chose de novateur), c’est toutefois étrange comme sentiment, surtout que le nom de Shannon ne m’était pas étranger, donc je ne sais pas si je n’avais pas lu ces idées mais néanmoins connu la personne (ou un homonyme) pour autre chose, ou si j’ai véritablement déjà connu ces réflexions, puis oublié consciemment; Ça, mais aussi est ce que ça diminue le ‘mérite’ que je pourrais en tirer -mérite entre de gros guillemets, parce que même si la démarche est intéressante, le traitement est superficiel et le serait très probablement resté, je ne compare pas du tout le mérite que je pourrais en tirer personnellement avec celui justement décerné à Shannon-.
PS :J’ai quelques autres trucs à raconter aussi, mais pas grand chose non plus, ma vie étant sur un plan personnel/bloguesque quand même franchement inintéressante -il ne tient qu’à moi d’y remédier-, en outre la liste des liens devrait être mise à jour sous peu, et même si l’absence fut longue, je ne me suis rien promis -je crois- par rapport au rythme de parution; Tout ça pour dire qu’une inactivité de ce genre ne signifie pas la mort de mon blog.

Les chahuts du pléistocène