Nathan's profileComment Je Deviens un Gé...PhotosBlogLists Tools Help

Blog


    2/26/2007

    列宁在伍叁柒捌

    列宁在伍叁柒捌

    Yan 25/02/2007 Dans le TGV 5378 Perpignan-Rennes

     

    佩皮尼洋斩乱麻

    春雨流芳我溢华

    断魂仍欲守空舍

    万家灯火映落花

     

    Everyone is as strong as God should let him or her be.

    You have every right to be proud of yourself.

    Life is beautiful. Embrace it fully.

    --- To Lei

    2/11/2007

    整理思路

    引子和问题 :

    在学校边的超市旁,有一小斜坡貌似超市入口,赫然写着« Sortie de Camions »,意为 « «卡车出口»。

    我们就这样坦然下了斜坡,进入超市。

    后来一想:要是有卡车过来,岂不把人碾平?

    然后司机感到下面压到了人,会忿忿地说 :

    «Sortie de camions ! Je t’ai déjà dit ! Déjà dit !» (卡车出口!我说过的!已经说过了!)

    然后他还不解气,倒车回来再压一次,咬牙切齿道 :

    « Déjà ! » (已经!)

    试探和研讨 :

    上星期从家人那里得知的结果是新加坡和新西兰的两流前辈应该会在澳大利亚汇合,形式到底是一个账户还是一个企业现在还很难决定。事到如今,也并不能说是我自己的操控,但是22岁的我已经在积极参与控制局面,L师傅说我的辉煌才刚刚开始。

    这时我很注意一点:
    有前辈很早就说过 :  “  如果你提前单独行动,我就打断你的腿。”

    尽管他们说现在可以开始了,明里暗里真正闪烁一下牛刀的锋芒。但是我相信,出于对任何一个我敬爱的前辈们的关心,在我出道之前,这些恃才放旷的举动都还为时过早。很简单,虽然自己物质上名誉上会有飞速提升,但是自己过早的贪念往往会使前辈无论是物质上还是精神上都受到或多或少的亏损(哪怕是很小的牺牲,我都不愿意看到)。况且雍和宫还没有去过,纸也没有烧过。苦其心志的做法仍要坚持,不畏物质与名分上的平庸,但求品格与灵魂上的伟岸。前几天接到了顺利转移到东京的C前辈的电话,发现无论是中国的运营商还是法国的运营商,对日本都不是很看好,所以日本那边还没有找到任何可以像越南那样的改革开放带来的六个突破口,甚至每一点都不能有把握顺利突破。况且几个月来一直没有顾及,我不能说是尽心了。

    思路仍然清晰,只是接二连三地不给突破的机会,却让人担忧起来。控制局面的前提是控制自己的急躁情绪!从局面上看,最近可以少给家人及南半球的前辈打电话,但是对北美和亚太前辈们的安危状况之体恤我义不容辞。所有人,保重, 身体第一。

    反省和惊起

    当北京和温哥华急得像热锅上的蚂蚁

    我沐在布列塔尼湿腻的雨中凡化自己

    躲在自命不凡的法国学生中做数学题

    浸在看似幸福的柴米油盐中剥大蒜皮

    惊起,惊起

    赶去充满温馨灯光的餐厅想一想问题

    在冰啤酒中悟出男人居安思危的道理

    2/3/2007

    Digitalize the world

    So I am continuing my undeniable mission to digitalize the real world! As I integrate every aspect of my talent in this complicated life-long project, I am overwhelmed with joy and gratitude because it is evident that what had seemingly been the pure propaganda over my former years has now become my professional driving-force to revolutionarily change the world: the well-rounded cultivation. It mainly contains 3 aspects:

    1. My Chinese moral and philosophical aspect
    2. My all-round engineering aspect
    3. My artistic aspect

    Despite the remarkable economic interest that would whirl automatically with the digitalized world (or any single part of it), this general approach of systematic digitalization, as its nature determines, will bring about THE most revolutionary change as it will free human-beings from all non-philosophical work by the implementation of the general automation of our world.

    How to do it? First we need to describe the world. Basically a world consists of its facts and regulations. Based on their own properties, such as their n-dimensional positions, their sizes, their colors, their hardness, etc, these facts all together form a temporal state of the world. Secondly we have a system of regulations in a world. With these regulations the facts are modified in a corresponding way. So the regulations restrict the temporal change of the state of the world.

    I chose object-orientated languages such as C++ and JAVA to make records of my philosophical understandings of the world. I am doing it in a very abstract and discrete way over the years and am progressing slowly. The recent opportunity of progress just came when I was assigned to do an artificial intelligence project in SUPELEC with my intelligent French partner Damien Laurens. Without any further explanation, he supports my idea of the generalization of the whole environment which we call “the world”. After hours of discussion and brainstorm, we now have this first specification to realize the functionalities of the manipulation of “the world”:

    Le logiciel présenté ici consiste à démontrer les possibilités de modélisation d’un monde et de transformation de son état. A partir d’une généralisation de l’automation de la manipulation du monde (selon la philosophie chinoise), il touche donc au domaine de l’intelligence artificielle puisqu’il peut gérer par lui-même les modifications apportées au monde (exécution des modifications et prises en compte de celles-ci pour la description du nouvel état).

    Le logiciel doit être programmé en Java, et pouvoir être utilisé sur une machine de puissance moyenne à partir de n’importe quel système d’exploitation compatible avec Java. Le client désire également avoir la possibilité de charger des fichiers de faits et d’opérations pour instaurer un état du monde et les règles qui le régissent. Grâce à ces données entrées par l’utilisateur, l’application doit pouvoir simuler le déclanchement d’une ou plusieurs règles et donner l’état du monde qui découle des modifications apportées. Le temps de réponse dépendra de la complexité du monde mais devra être très court pour espérer être intégré à une application industrielle (exemple : robot manipulateur).

     

    DESCRIPTION FONCTIONNELLE

    -         Lecture de fait depuis un fichier

    -          acteurs impliqués : l’utilisateur doit choisir un fichier de description de l’état du monde

    -          pré-conditions : l’utilisateur doit avoir un droit d’accès

    -          déroulement : ouverture d’une fenêtre de navigation pour chercher un fichier, choix du fichier, lecture des chaînes de caractères contenues dans celui-ci

    -          post-conditions : les chaînes de caractères décrivant le monde sont enregistrées

    -          exceptions : le fichier choisit n’est pas du bon type, le texte contient des caractères interdits ou le fichier est vide (retour de la part de l’application : « fichier vide »)

     

    -         Lecture de règles depuis un fichier

    -          acteurs impliqués : l’utilisateur doit choisir un fichier de description des règles à instaurer

    -          pré-conditions : l’utilisateur doit avoir un droit d’accès

    -          déroulement : ouverture d’une fenêtre de navigation pour chercher un fichier, choix du fichier, lecture des chaînes de caractères contenues dans celui-ci

    -          post-conditions : les chaînes de caractères décrivant les règles à instaurer sont enregistrées

    -          exceptions : le fichier choisit n’est pas du bon type, le texte contient des caractères interdits ou le fichier est vide (retour de la part de l’application : « fichier vide »)

     

    -         Edition de fait par l’utilisateur hors utilisation

    -          acteurs impliqués : l’utilisateur doit écrire un état complet du monde

    -          déroulement : ouverture d’une boite de texte, écriture des faits (en chaînes de caractères), création et enregistrement du fichier

    -          post-conditions : le fichier est créé

    -          exceptions : le texte contient des caractères interdits

     

    -         Edition de règle par l’utilisateur hors utilisation

    -          acteurs impliqués : l’utilisateur doit écrire un jeu complet de règles pouvant régir un monde

    -          déroulement : ouverture d’une boite de texte, écriture des faits (en chaînes de caractères), création et enregistrement du fichier

    -          post-conditions : le fichier est créé

    -          exceptions : le texte contient des caractères interdits

     

    -         Edition de fait par l’utilisateur en cours d’application

    -          acteurs impliqués : l’utilisateur doit directement taper les faits à ajouter ou supprimer dans le monde

    -          pré-conditions : l’utilisateur doit avoir un droit d’accès

    -          déroulement : ouverture d’une boite de dialogue, écriture des modifications à apporter (en chaînes de caractères ou en Java directement), modification du monde

    -          post-conditions : le monde est modifié

    -          exceptions : les chaînes de caractères écrites n’ont aucune signification, le code Java écrit possède des erreurs de syntaxe, les modifications sont incomplètes ou incohérentes par rapport à l’état actuel du monde, ou en conflit avec les règles applicables

     

    -         Edition de règles par l’utilisateur en cours d’application

    -          acteurs impliqués : l’utilisateur doit directement taper les règles à ajouter ou supprimer dans le monde

    -          pré-conditions : l’utilisateur doit avoir un droit d’accès

    -          déroulement : ouverture d’une boite de dialogue, écriture des modifications à apporter (en chaînes de caractères ou en Java directement), modification du monde

    -          post-conditions : le monde est modifié

    -          exceptions : les chaînes de caractères écrites n’ont aucune signification, le code Java écrit possède des erreurs de syntaxe, les modifications sont incomplètes ou incohérentes par rapport à l’état actuel du monde, ou en conflit avec les règles applicables

     

    -         Enregistrement de l’état du monde dans un fichier

    -          acteurs impliqués : l’utilisateur doit demander l’enregistrement de l’état du monde

    -          pré-condition : aucune règle ne doit être en cours d’exécution

    -          déroulement : lister les faits, traduire cette liste sous forme de chaînes de caractères, enregistrer cette liste dans fichier créé pour l’occasion

    -          post-condition : un fichier est créé avec la liste des faits décrivant le monde

    -          exception : mémoire pleine

     

    -         Enregistrement dans un fichier des règles en vigueur dans un monde

    -          acteurs impliqués : l’utilisateur doit demander l’enregistrement de l’état du monde

    -          pré-condition : aucune règle ne doit être en cours d’exécution

    -          déroulement : lister les faits, traduire cette liste sous forme de chaînes de caractères, enregistrer cette liste dans fichier créé pour l’occasion

    -          post-condition : un fichier est créé avec la liste des faits décrivant le monde

    -          exception : mémoire pleine

     

    -         Traduire des faits écrits sous forme de chaînes de caractères en langage Java

    -          déroulement : lire les chaînes de caractères dans un fichier, les reconnaître et les faire correspondre à un paragraphe Java

    -          des objets Java sont créés

    -          exceptions : les chaînes de caractères ne correspondent à aucun paragraphe Java

     

    -         Traduire des règles écrites sous forme de chaînes de caractères en langage Java

    -          déroulement : lire les chaînes de caractères dans un fichier, les reconnaître et les faire correspondre à un paragraphe Java

    -          des objets Java sont créés

    -          exceptions : les chaînes de caractères ne correspondent à aucun paragraphe Java

     

    -         Afficher la liste des faits sur un critère ou non

    -          acteurs impliqués : l’utilisateur doit demander l’affichage de la liste des faits et préciser sur quel(s) critère(s)

    -          pré-condition : aucune règle ne doit être en cours d’exécution

    -          déroulement : lister les faits qui remplissent le critère, traduire cette liste sous forme de chaînes de caractères, afficher les faits dans une boite de dialogue

    -          post-condition : une boite de dialogue apparaît avec la liste des faits décrivant le monde

     

    -         Afficher la liste des règles en vigueur sur un critère ou non

    -          acteurs impliqués : l’utilisateur doit demander l’affichage de la liste des règles et préciser sur quel(s) critère(s)

    -          pré-condition : aucune règle ne doit être en cours d’exécution

    -          déroulement : lister les règles qui remplissent le critère,, traduire cette liste sous forme de chaînes de caractères, afficher les règles dans une boite de dialogue

    -          post-condition : une boite de dialogue apparaît avec la liste des règles décrivant le monde

     

    -         Appliquer une règle

    -          acteurs impliqués : l’utilisateur doit demander l’application d’une règle

    -          pré-condition : aucune règle ne doit être en cours d’exécution ou la règle demandée n’interagit pas avec les règles en exécution

    -          déroulement : choisir une règle dans les règles en vigueur, traduire cette règle en langage Java, exécuter la règle qui remplissent le critère

    -          post-condition : l’état du monde est modifié

    -          exception : il n’y a aucune règle en vigueur

     

    Tester l’intelligence du programme par atteinte d’un but

    -          acteurs impliqués : l’utilisateur doit spécifier un but, un fait à atteindre grâce à un enchaînement de règles que le programme doit établir seul

    -          pré-condition : aucune règle ne doit être en cours d’exécution

    -          déroulement : le programme liste les règles permettant d’atteindre l’état visé, puis liste les règles permettant d’atteindre l’état initial des règles précédemment listées, et ainsi de suite jusqu’à trouver l’état du monde actuel. La séquence de règles à appliquer pour atteindre l’état visé est alors connue. Elles sont alors appliquées dans le bon ordre.

    -          Post-condition : l’état du monde est modifié comme l’utilisateur le souhaitait

    -          exception : il n’y a aucune règle en vigueur ou  l’état visé ne peut atteindre avec le jeu de règles à la disposition du programme ou le temps de réflexion dépasse un certain temps maximal de recherche