Je voudrais ajouter en plus que le code source du programme n'étant pas disponible c'est d'autant plus difficile de connaitre les intentions de l'auteur.
Je sais pas si les auteurs de l'article pensent qu'on approche d'une résolution faible du jeu d'échecs "Nevertheless, the resolution of chess remains too difficult to be imagined: the number of legal positions is something around 1045 [All94] and decision complexity is very high (the amount of chess literature is a proof by itself)" ce qui semble exactement le contraire de ton opinion.
Des propriété spéciales de cette variantes ont permis cette résolution
"The main line of oracles were computed in a semi-automated way: we were mainly following the most
equalizing line. It turns out that most of the deviations from the main line can be quickly decided. It is
mainly due to the fact that in Gardner’s chess pawns are immediately exchanged or blocked. Moreover,
pieces cannot develop naturally since almost all free squares are controlled by pawns. Also the fact that
promotion happens quickly leads to some very rapid checkmates that allow to prune the game tree."
comment j'avais fait mon calcul? j'avais supposé qu'il n'y avait qu'un coup parfait. L'ordinateur réduit les coups envisageable à quinze coup par une heuristique. En choisissant un coup au hasard parmi les 15. il met en moyenne 7,5 coups à choisir le coup parfait. J'avais effectivement négligé le fait qu'il pouvait y avoir plusieurs coups parfait.
Concernant la résolution du jeu de dame anglaise, si j'ai bien compris elle a été résolue: par une heuristique rapide et correcte, réduisant le alpha, et par le fait que la fin de partie était calculable par analyse rétrograde et ce a un point que la recherche avant et arrière se complétait.
Si tu as des indices sur comment faire pour aider les ordinateur à trouver rapidement le bon coup dans une position donnée, je serai ravi de l'entendre, car dans mon expérience des ordinateurs jouant aux échecs, leur meilleur coup à une profondeur n+1 est souvent le coup classée au moins 8ème à une profondeur n.
Désolé de mon erreur. Il fallait lire: "Cette hypothèse est en plus vraiment optimiste car en l'état ce qui fait la force d'un programme d'échecs c'est sa force de recherche brute, beaucoup plus que sa finesse d'évaluation d'une position." (échecs au lieu de go)
"La" conférence. La quelle ?
D'après ce que je comprends de ce que tu dis il dis que seul le logiciel libre permet d'avoir des données libre, pas que la GPL a été créé avant tout pour libérer les données.
Je voudrais bien utiliser cette faille pour rendre les ether à ses légitimes propriétaires, mais comment le déterminer? Si le contrat est sensé spécifier une condition pour la quelle l'argent devrait être rendu a quelqu'un d'autre, comment le déterminer, quelle est la différence entre un bug dans le code et quelque chose d'intentionnel ? Si quelqu'un crée un contrat disant que le premier qui le découvre a le droit de se servir, comment différentier avec un contrat buggé ?
J'ai découvert https://query.wikidata.org et le SPARQL en voulant dépanner un wikipedien/wikidataien qui voulait corriger une de ses requêtes visant à récupérer les communes françaises les plus au sud. J'ai du donc découvrir le principe du SPARQL, et la syntaxe mise à part découvert que ça s'apparentait beaucoup à du SQL, des jointures partout. En bref le principe est génial. Toute la difficulté a été de trouver à quoi tous ces codes bizarres correspondent. Au final après deux heures de travail j'ai réussit à avoir le résultat tant attendu.
Si je découvre une faille dans un programme d'un contrat qui me permet de récupérer plein d'ether et que j'en profite pour récupérer la monnaie avant que quelqu'un d'autre le fasse, suis-je considéré comme un voleur ?
J'ai pas tout suivi, mais dans sa biographie autorisée et relue par Richard Stallman en français il est bien spécifié que l'origine du logiciel libre (et par extension) c'est un foutu pilote d'imprimante (donc un logiciel, pas des données) dont les sources étaient privées. Si tu as d'autres source, je veux bien que tu les partage.
D'après le texte de l'article, j'ai trouvé cette hypothèse. "Nous prendrons alpha = 2, soit en moyenne, un nœud inutilement évalué avant que le nœud perdant soit trouvé, hypothèse nous semblant prudente." Cela ne me semble pas prudent du tout, en l'état actuel de mes connaissances du jeu d'échecs et des programmes d'échecs.
Tout d'abord, en donnant une position équilibrée à un programme d'échecs, il donne facilement au moins une quinzaine de coup raisonnable pour la position, et partant de cet hypothèse il faudrait que le alpha soit au minimum de 7 (en supposant qu'une fois sur deux il y a plus et une fois sur deux moins de nœuds erronés.
Une autre hypothèse serait celle d'un ordinateur faisant des évaluations de positions aussi bonne que celles d'un fort joueur d'échecs (sans recherche dans l'arbre) Dans ce cas, j'ai vraiment de forts doutes qu'on puisse les réduire à un coup dans l'eau pour un coup correct. Ce n'est en tout cas pas ce que mon expérience de faible joueur de club me dit. Cette hypothèse est en plus vraiment optimiste car en l'état ce qui fait la force d'un programme de go c'est sa force de recherche brute, beaucoup plus que sa finesse d'évaluation d'une position.
Ça doit être mon manque de connaissance en Haskell, le caractère lisible et facile à comprendre ne me saute pas aux yeux. (NB il manque le filter dans le dernier exemple mais c'est tout sauf grave)
Prenons le dernier exemple qui me parait le plus simple (si on omet l'explication de la fonction cat):
fmap je suppose que ça veut dire function map
>>= Ça doit être un truc avec l'approche monadique
Le . doit être pour la composition de fonction
mais qu'est-ce que le () à la fin ?
Les point 2 et 4 me paraissent tout à fait inexplicable.
Ce que je veux dire c'est que votre familiarité avec un langage fait croire que ce langage est clair, mais qu'en fait ce n'est le cas que pour ceux qui sont familiarisés avec ses idiomes.
PS1: Si quelqu'un veut bien m'expliquer les points mystérieux il est le bien venu
PS2: J'ai toujours voulu apprendre le Haskell sans jamais y arriver, quelqu'un peut-il m'indiquer un ou des points de départs ?
Je connaissais pas tous ces outils, mais leur point commun est en gros d'appeler les outils shell.
Ma bibliothèque permet:
1. de faire un pipeline d'outil en pur python
2. de faciliter le développement d'outil en pur python.
Le gros avantage des outils en pur python est qu'ils sont beaucoup plus simple à développer que leur équivalent en C.
Le gros inconvénient c'est qu'il faut redévelopper les outil et qu'on ne peut pas réutiliser ceux existant. (Ceci étant minoré par le fait qu'ils sont plus simple)
Concernant le nom des outils, c'est compliqué:
- j'ai essayé qu'ils soient le plus clair possible pour des programmeurs python
- j'ai essayé de limiter le remplacement des builtins (j'y suis pas arrivé pour map et filter)
Pour la commande sed, je vais faire une commande basée sur re.sub c'est suffisant à votre avis?
En règle générale, si vous voyez des outils utiles dites le moi.
Pour donner une réponse pertinente, il est utile de connaître exactement ton problème. Actuellement ça ressemble à un problème XY? Que veut tu faire exactement ?
Peut tu donner un maximum d'information sur ton problème initial ?
Le plus détaillé est ceci mais si tu pouvais en dire encore plus ce serait plus facile de t'aider.
Perl vs Python pour petits programme: Ça doit être une question de génération. Ça fait longtemps que j'ai pas pratiqué le perl, et avant de le faire redécouvrir la syntaxe j'ai l'impression qu'il me faudra bien plus longtemps pour faire un court script perl
Je voulais dire que je suis passé à Debian étant sous Ubuntu avant. Le passage ne s'est pas fait sans difficulté d'ailleurs, car voulant suivre le protocole sur le site debian (écriture du CD sur une clef USB) ça ne marchait pas, je suis passé par unetbootin qui fonctionnait (en présélectionnant debian, car en mettant une iso téléchargée ça ne fonctionnait pas non plus)
[^] # Re: Faille dans les programmes ?
Posté par Xavier Combelle (site web personnel) . En réponse au journal Ethereum, désormais officiellement lancé. Évalué à 2.
Je voudrais ajouter en plus que le code source du programme n'étant pas disponible c'est d'autant plus difficile de connaitre les intentions de l'auteur.
[^] # Re: alpha = 2 pas prudent à mon avis
Posté par Xavier Combelle (site web personnel) . En réponse au journal Résolution du jeu d'échecs : patience, ça arrive.... Évalué à 1.
Je sais pas si les auteurs de l'article pensent qu'on approche d'une résolution faible du jeu d'échecs "Nevertheless, the resolution of chess remains too difficult to be imagined: the number of legal positions is something around 1045 [All94] and decision complexity is very high (the amount of chess literature is a proof by itself)" ce qui semble exactement le contraire de ton opinion.
Des propriété spéciales de cette variantes ont permis cette résolution
"The main line of oracles were computed in a semi-automated way: we were mainly following the most
equalizing line. It turns out that most of the deviations from the main line can be quickly decided. It is
mainly due to the fact that in Gardner’s chess pawns are immediately exchanged or blocked. Moreover,
pieces cannot develop naturally since almost all free squares are controlled by pawns. Also the fact that
promotion happens quickly leads to some very rapid checkmates that allow to prune the game tree."
[^] # Re: alpha = 2 pas prudent à mon avis
Posté par Xavier Combelle (site web personnel) . En réponse au journal Résolution du jeu d'échecs : patience, ça arrive.... Évalué à 1.
comment j'avais fait mon calcul? j'avais supposé qu'il n'y avait qu'un coup parfait. L'ordinateur réduit les coups envisageable à quinze coup par une heuristique. En choisissant un coup au hasard parmi les 15. il met en moyenne 7,5 coups à choisir le coup parfait. J'avais effectivement négligé le fait qu'il pouvait y avoir plusieurs coups parfait.
Concernant la résolution du jeu de dame anglaise, si j'ai bien compris elle a été résolue: par une heuristique rapide et correcte, réduisant le alpha, et par le fait que la fin de partie était calculable par analyse rétrograde et ce a un point que la recherche avant et arrière se complétait.
Si tu as des indices sur comment faire pour aider les ordinateur à trouver rapidement le bon coup dans une position donnée, je serai ravi de l'entendre, car dans mon expérience des ordinateurs jouant aux échecs, leur meilleur coup à une profondeur n+1 est souvent le coup classée au moins 8ème à une profondeur n.
Désolé de mon erreur. Il fallait lire: "Cette hypothèse est en plus vraiment optimiste car en l'état ce qui fait la force d'un programme d'échecs c'est sa force de recherche brute, beaucoup plus que sa finesse d'évaluation d'une position." (échecs au lieu de go)
[^] # Re: Avis d'un fonctionnaire décisionnaire.
Posté par Xavier Combelle (site web personnel) . En réponse à la dépêche 2048 courriers de sensibilisation des acteurs locaux aux enjeux du logiciel libre (un par jour). Évalué à 2.
"La" conférence. La quelle ?
D'après ce que je comprends de ce que tu dis il dis que seul le logiciel libre permet d'avoir des données libre, pas que la GPL a été créé avant tout pour libérer les données.
[^] # Re: Faille dans les programmes ?
Posté par Xavier Combelle (site web personnel) . En réponse au journal Ethereum, désormais officiellement lancé. Évalué à 2.
Je voudrais bien utiliser cette faille pour rendre les ether à ses légitimes propriétaires, mais comment le déterminer? Si le contrat est sensé spécifier une condition pour la quelle l'argent devrait être rendu a quelqu'un d'autre, comment le déterminer, quelle est la différence entre un bug dans le code et quelque chose d'intentionnel ? Si quelqu'un crée un contrat disant que le premier qui le découvre a le droit de se servir, comment différentier avec un contrat buggé ?
# SPARQL c'est génial
Posté par Xavier Combelle (site web personnel) . En réponse au journal Chroniques de Wikidata : du visible ! requêtes et unités. Évalué à 4.
J'ai découvert https://query.wikidata.org et le SPARQL en voulant dépanner un wikipedien/wikidataien qui voulait corriger une de ses requêtes visant à récupérer les communes françaises les plus au sud. J'ai du donc découvrir le principe du SPARQL, et la syntaxe mise à part découvert que ça s'apparentait beaucoup à du SQL, des jointures partout. En bref le principe est génial. Toute la difficulté a été de trouver à quoi tous ces codes bizarres correspondent. Au final après deux heures de travail j'ai réussit à avoir le résultat tant attendu.
code de la requête
Lien vers l'éxécution directe sur query.wikidata.org
Cette référence permet de mieux comprendre la requête finale https://www.mediawiki.org/wiki/Wikibase/Indexing/RDF_Dump_Format
# Faille dans les programmes ?
Posté par Xavier Combelle (site web personnel) . En réponse au journal Ethereum, désormais officiellement lancé. Évalué à 2.
Bonjour,
Si je découvre une faille dans un programme d'un contrat qui me permet de récupérer plein d'ether et que j'en profite pour récupérer la monnaie avant que quelqu'un d'autre le fasse, suis-je considéré comme un voleur ?
[^] # Re: Avis d'un fonctionnaire décisionnaire.
Posté par Xavier Combelle (site web personnel) . En réponse à la dépêche 2048 courriers de sensibilisation des acteurs locaux aux enjeux du logiciel libre (un par jour). Évalué à 1.
Le navigateur c'est un logiciel libre ?
[^] # Re: Avis d'un fonctionnaire décisionnaire.
Posté par Xavier Combelle (site web personnel) . En réponse à la dépêche 2048 courriers de sensibilisation des acteurs locaux aux enjeux du logiciel libre (un par jour). Évalué à 3.
J'ai pas tout suivi, mais dans sa biographie autorisée et relue par Richard Stallman en français il est bien spécifié que l'origine du logiciel libre (et par extension) c'est un foutu pilote d'imprimante (donc un logiciel, pas des données) dont les sources étaient privées. Si tu as d'autres source, je veux bien que tu les partage.
[^] # Re: Un projet à suivre
Posté par Xavier Combelle (site web personnel) . En réponse à la dépêche La campagne Kickstarter de Own-Mailbox a commencé. Évalué à 3.
Concernant la répartition, je trouves qu'ils n'ont pas l'intention de se rémunérer très cher
"12%: Salaries for us to live on while working on the project and possibly to pay some external developers."
12% de 95 000 dollars ça fait que 11 000 dollars. à partager en deux + payer des développeurs externes ?
[^] # Re: Signature
Posté par Xavier Combelle (site web personnel) . En réponse à la dépêche Sortie de Firefox 40. Évalué à 4.
a prioiri les développeurs d'extension sont priés d'utiliser firefox developper.
[^] # Re: responsabilité
Posté par Xavier Combelle (site web personnel) . En réponse au journal [Charlie] robot war. Évalué à 0.
Comme je disais, je pense que l'article que ce journal montre fait preuve de beaucoup trop d'optimisme.
# alpha = 2 pas prudent à mon avis
Posté par Xavier Combelle (site web personnel) . En réponse au journal Résolution du jeu d'échecs : patience, ça arrive.... Évalué à 1.
D'après le texte de l'article, j'ai trouvé cette hypothèse. "Nous prendrons alpha = 2, soit en moyenne, un nœud inutilement évalué avant que le nœud perdant soit trouvé, hypothèse nous semblant prudente." Cela ne me semble pas prudent du tout, en l'état actuel de mes connaissances du jeu d'échecs et des programmes d'échecs.
Tout d'abord, en donnant une position équilibrée à un programme d'échecs, il donne facilement au moins une quinzaine de coup raisonnable pour la position, et partant de cet hypothèse il faudrait que le alpha soit au minimum de 7 (en supposant qu'une fois sur deux il y a plus et une fois sur deux moins de nœuds erronés.
Une autre hypothèse serait celle d'un ordinateur faisant des évaluations de positions aussi bonne que celles d'un fort joueur d'échecs (sans recherche dans l'arbre) Dans ce cas, j'ai vraiment de forts doutes qu'on puisse les réduire à un coup dans l'eau pour un coup correct. Ce n'est en tout cas pas ce que mon expérience de faible joueur de club me dit. Cette hypothèse est en plus vraiment optimiste car en l'état ce qui fait la force d'un programme de go c'est sa force de recherche brute, beaucoup plus que sa finesse d'évaluation d'une position.
[^] # Re: Gestion des erreurs
Posté par Xavier Combelle (site web personnel) . En réponse au journal chaintools, outils unix avec syntaxe pythonique. Évalué à 1.
en passant sur #haskell, l'auteur de https://github.com/bitemyapp/learnhaskell/blob/master/guide-fr.md me l'a conseillé j'ai commencé par Le cours cis194 de Yorgey et il a l'air vraiment bien
[^] # Re: Gestion des erreurs
Posté par Xavier Combelle (site web personnel) . En réponse au journal chaintools, outils unix avec syntaxe pythonique. Évalué à 4. Dernière modification le 28 juin 2015 à 18:14.
Ça doit être mon manque de connaissance en Haskell, le caractère lisible et facile à comprendre ne me saute pas aux yeux. (NB il manque le filter dans le dernier exemple mais c'est tout sauf grave)
Prenons le dernier exemple qui me parait le plus simple (si on omet l'explication de la fonction cat):
.
doit être pour la composition de fonction()
à la fin ?Les point 2 et 4 me paraissent tout à fait inexplicable.
Ce que je veux dire c'est que votre familiarité avec un langage fait croire que ce langage est clair, mais qu'en fait ce n'est le cas que pour ceux qui sont familiarisés avec ses idiomes.
PS1: Si quelqu'un veut bien m'expliquer les points mystérieux il est le bien venu
PS2: J'ai toujours voulu apprendre le Haskell sans jamais y arriver, quelqu'un peut-il m'indiquer un ou des points de départs ?
[^] # Re: Gestion des erreurs
Posté par Xavier Combelle (site web personnel) . En réponse au journal chaintools, outils unix avec syntaxe pythonique. Évalué à 2. Dernière modification le 28 juin 2015 à 16:38.
Par des exceptions
Qu'appelles tu informations importantes au déboguage ? Peux tu donner des exemples ?
J'ai vraiment pas compris ce que tu veux dire. D'habitude quand un script plante le plus simple c'est de le réparer et le relancer non ?
[^] # Re: Autres outils
Posté par Xavier Combelle (site web personnel) . En réponse au journal chaintools, outils unix avec syntaxe pythonique. Évalué à 1.
Effectivement pyxshell (et calabash dont il est dérivé) font exactement la même chose. J'aurais du chercher plus avant de me lancer dans mon truc.
[^] # Re: Autres outils
Posté par Xavier Combelle (site web personnel) . En réponse au journal chaintools, outils unix avec syntaxe pythonique. Évalué à 2. Dernière modification le 27 juin 2015 à 15:38.
La solution "d'utiliser chaque appel comme une instruction indépendante" est la solution que j'avais déjà vu.
Elle a deux défauts à mon avis:
La solution d'utiliser une notation infixe est quasi équivalent, mais son coté hack me fait préférer une notation explicite.
[^] # Re: remarques sur filter et sed
Posté par Xavier Combelle (site web personnel) . En réponse au journal chaintools, outils unix avec syntaxe pythonique. Évalué à 2.
devant la demande générale j'ai ajouté un outil sub. https://github.com/xcombelle/chaintools/commit/8a88ec062706183afd4346d9100d221ec67648f1
[^] # Re: Autres outils
Posté par Xavier Combelle (site web personnel) . En réponse au journal chaintools, outils unix avec syntaxe pythonique. Évalué à 2.
Je connaissais pas tous ces outils, mais leur point commun est en gros d'appeler les outils shell.
Ma bibliothèque permet:
1. de faire un pipeline d'outil en pur python
2. de faciliter le développement d'outil en pur python.
Le gros avantage des outils en pur python est qu'ils sont beaucoup plus simple à développer que leur équivalent en C.
Le gros inconvénient c'est qu'il faut redévelopper les outil et qu'on ne peut pas réutiliser ceux existant. (Ceci étant minoré par le fait qu'ils sont plus simple)
[^] # Re: remarques sur filter et sed
Posté par Xavier Combelle (site web personnel) . En réponse au journal chaintools, outils unix avec syntaxe pythonique. Évalué à 4.
Merci du commentaire
Concernant le nom des outils, c'est compliqué:
- j'ai essayé qu'ils soient le plus clair possible pour des programmeurs python
- j'ai essayé de limiter le remplacement des builtins (j'y suis pas arrivé pour map et filter)
Pour la commande sed, je vais faire une commande basée sur
re.sub
c'est suffisant à votre avis?En règle générale, si vous voyez des outils utiles dites le moi.
Toute remarque est la bienvenue.
# Quel est ton exact problème ?
Posté par Xavier Combelle (site web personnel) . En réponse au journal Existe-t-il un bon algorithme qui permet de compresser et de chiffrer en meme temps. Évalué à 3.
Pour donner une réponse pertinente, il est utile de connaître exactement ton problème. Actuellement ça ressemble à un problème XY? Que veut tu faire exactement ?
Peut tu donner un maximum d'information sur ton problème initial ?
Le plus détaillé est ceci mais si tu pouvais en dire encore plus ce serait plus facile de t'aider.
Le plus d'info que tu as livré est dans: http://www.metzdowd.com/pipermail/cryptography/2015-May/025522.html, mais ça reste vague.
[^] # Perl vs Python
Posté par Xavier Combelle (site web personnel) . En réponse au journal Word vs TeX. Évalué à 2.
Perl vs Python pour petits programme: Ça doit être une question de génération. Ça fait longtemps que j'ai pas pratiqué le perl, et avant de le faire redécouvrir la syntaxe j'ai l'impression qu'il me faudra bien plus longtemps pour faire un court script perl
[^] # Re: Salut
Posté par Xavier Combelle (site web personnel) . En réponse au journal passage à debian testing. Évalué à 1.
Je voulais dire que je suis passé à Debian étant sous Ubuntu avant. Le passage ne s'est pas fait sans difficulté d'ailleurs, car voulant suivre le protocole sur le site debian (écriture du CD sur une clef USB) ça ne marchait pas, je suis passé par unetbootin qui fonctionnait (en présélectionnant debian, car en mettant une iso téléchargée ça ne fonctionnait pas non plus)
[^] # Re: Essai
Posté par Xavier Combelle (site web personnel) . En réponse au message Besoin d'avis sur algo Python. Évalué à 1.
à la place de
je ferais un