π
<-
Chat plein-écran
[^]

Divers Modèles non conformes en magasin, continue à être vigilant !

Nouveau messagede critor » 08 Déc 2017, 17:49

As-tu fait l'erreur de te prendre un modèle d'entrée de gamme qui t'handicapera en mode examen, comme la
Lexibook GC3000FR
dont nombre de possesseurs tentent déjà de se débarrasser tout en lui attribuant collectivement toutes les qualités du monde ? :p
(parfaite pour le lycée, le BAC, la Seconde, les séries non scientifiques, technologiques ou professionnelles et j'en passe...)
:troll:
Envie d'une meilleure calculatrice pour Noël ?
Il est en effet loin d'être trop tard et tu as encore largement le temps de la maîtriser même pour des examens ou concours cette année. :)

Tâche toutefois de ne pas te faire avoir une seconde fois. Car même si nombre de magasins ont enfin eu le respect pour cette rentrée 2017 de nettoyer leur rayon scolaire en en retirant tous les modèles non conformes, ce n'est hélas pas le cas partout. :'(

9034Ci-contre un magasin
Géant
, possiblement non représentatif de l'ensemble de la chaîne puisque nous avions pu remarquer les rentrées précédentes que les politiques d'affichage variaient grandement d'un magasin à un autre, mais qui continue quand même scandaleusement encore en 2017-2018 à tenter de te refiler ses
Casio Graph 35+ USB
et
Casio fx-CP400
non conformes, c'est-à-dire désormais inutilisables et non revendables. Autrement dit elles ne valent quasiment plus rien en France. Modèles affichés en rayon scolaire sans aucune mention de cette grave limitation
(manquement au devoir d'information du vendeur professionnel)
et sans aucune réduction, histoire en prime de te faire payer l'arnaque plein pot. :mj:

N'hésite pas à consulter la liste des modèles conformes ainsi que notre classement indépendant
QCC 2017
.
Lien vers le sujet sur le forum: Modèles non conformes en magasin, continue à être vigilant ! (Commentaires: 2)

TI-z80 Un vrai monde de glitches pour les experts Oiram CE !

Nouveau messagede critor » 06 Déc 2017, 20:40

7698Il y a quelques temps, te sortait
Glitches
, 2 niveaux spéciaux pour t'entraîner à exploiter tel un
speedrunner
les
glitches
(une catégorie de bugs ouvrant des possibilités non voulues)
de
Mario Oiram CE
sur ta
TI-83 Premium CE
. Arriver à passer à travers murs, plafonds et sols était une nécessité absolue pour arriver au bout du niveau.

Cette semaine c'est qui reprend cette idée avec
Hmmm... Glitches !
. Cette fois-ci il ne s'agit plus d'un agrégat concentré de
glitches
dans 2 niveaux, mais d'un véritable pack où les
glitches
sont correctement mis en scène au sein de 10 niveaux ! :bj:






Si tu penses maîtriser
Oiram CE
sur le bout des doigts, alors relève le défi de ton épreuve ultime et entre dans l'Histoire ! :bj:


Rappelons que
Oiram CE
nécessite les bibliothèques C téléchargeables ci-dessous pour fonctionner correctement. Mais il y a juste à transférer les fichiers en question qui deviennent alors immédiatement fonctionnels. :)




Téléchargements
:
Lien vers le sujet sur le forum: Un vrai monde de glitches pour les experts Oiram CE ! (Commentaires: 6)

NumWorks Nouvel OS NumWorks 1.2.0 - Calcul exact+littéral et Python !

Nouveau messagede critor » 05 Déc 2017, 14:28

9033Aujourd'hui sort le nouveau
firmware
1.2.0
pour ta calculatrice
NumWorks
. Découvrons ensemble les toutes dernières nouveautés et améliorations.

Sommaire
:

  1. Moteur de calcul exact…
  2. … et littéral ?
  3. Environnement de développement Python
  4. Conclusion


1) Moteur de calcul exact…
Go to top

Comme déjà présenté sur le stand
NumWorks
aux journées APMEP à Nantes, la première chose qui saute aux yeux après l’installation du nouveau
firmware
, c’est la présence enfin d’un moteur de calcul exact dans l’application
Calculs
; l’un des points essentiels qui manquaient face aux modèles concurrents de milieu de gamme
TI-83 Premium CE
et
Casio Graph 35/75/90+E
. :bj:

NumWorks
ne manque pas d’y rajouter sa petite touche habituelle d’originalité, avec un affichage mixte profitant intelligemment de la définition de l’écran en 320x240 pixels pour y présenter les résultats à la fois en écriture exacte et décimale. Cela a certes l’avantage évident d’éviter à l’utilisateur des manipulations plus ou moins complexes pour basculer de l’une à l’autre, comme il devrait le faire sur les autres modèles. Mais cet affichage a également des effets positifs sur les compétences de l’utilisateur, ayant l’avantage de lier ici clairement ces formes comme deux représentations du même objet mathématique au lieu de les séparer, et de plus avec une formulation mathématique correcte avec le symbole environ; de quoi améliorer à la fois l’acquisition des compétences
Représenter
et
Communiquer
. :bj:

Accessoirement pour peut-être mieux optimiser l’affichage par rapport à cette nouveauté, notons que dans l’application
Paramètres
il est désormais possible de choisir le nombre maximum de chiffres significatifs affichés, par défaut 7. Mais notons bien que même si c’est un paramètre global, il ne s’appliquera en pratique qu’à l’application
Calculs
.

Le moteur de calcul exact utilisé semble à priori aussi performant que la concurrence de milieu de gamme, gérant de même les binômes de radicaux ainsi que les nombres imaginaires
(Terminales S, STI2D et STL-SPCL)
. :bj:

Rappelons pour référence que les modèles de milieu de gamme concurrents
TI-83 Premium CE
et
Casio Graph 35/75/90+E
gèrent deux familles de résultats réels exacts :
  • $mathjax$\pm\frac{a\pi}{b}$mathjax$
    pour la trigonométrie bien évidemment
  • $mathjax$\frac{\pm a\sqrt{b} \pm c\sqrt{d}}{f}$mathjax$
    qui est une famille de nombres avec des propriétés aisément vérifiables par les processeurs légers, et couvrant l’essentiel des besoins des lycéens jusqu’en Première

Quelle n’est donc pas notre surprise en découvrant que le moteur de calcul exact intégré gère d’autres formes plus complexes, notamment les valeurs trigonométriques remarquables en
$mathjax$k\frac{\pi}{5}$mathjax$
,
$mathjax$k\frac{\pi}{8}$mathjax$
et
$mathjax$k\frac{\pi}{10}$mathjax$
avec
k
entier. Valeurs non gérées chez la concurrence en-dessous des modèles haut de gamme
(du moins, pas sans des programmes additionnels qui seront de toutes façons détruits par le mode examen)
. :o

NumWorks
aurait-il géré une liste de formes exactes un peu plus nombreuses ou générales que celles des moteurs exacts de milieu de gamme concurrents ?


En fait, il ne semble pas y avoir de limite selon nos tests. Pour tout calcul n’utilisant pas d’écriture décimale, aussi complexe soit-il, la calculatrice est désormais potentiellement capable de retourner une valeur exacte. En pratique, des conséquences fort sympathiques pour tous les élèves de séries générales et technologiques, avec un modèle de milieu de gamme enfin conforme aux programmes de Terminale qui ne font travailler quasiment que sur les fonctions logarithmique et exponentielle, dont les formes exactes qui en découlent n’étaient pas gérées par les modèles concurrents de milieu de gamme ! :bj:

En théorie, cela impliquerait que le fonctionnement interne du moteur utilise non pas une liste de formes prédéfinies, mais des arbres binaires de calculs, soit la base d’un moteur de calcul littéral. Et si en fait… :o



2) … et littéral ?
Go to top

… et bingo, le nouveau moteur de calcul
NumWorks
ne fait pas que fonctionner comme un moteur de calcul littéral, il fait vraiment du calcul littéral ! :bj:

Il semble toutefois très limité, et ne saurait en rien être comparé avec les moteurs de calcul dits CAS intégrés aux modèles haut de gamme :
  • D’une part il ne sait rien faire d’autre que simplifier des expressions littérales. Pas de possibilité de préciser si l’on souhaite que la simplification se fasse par factorisation ou développement.
  • D’autre part, il n’y a eu aucun ajout de fonction utilisant ce moteur. Pas de possibilité donc contrairement aux modèles CAS de résoudre des équations, dériver, primitiver, calculer des limites, déterminer des ensembles de définition ou encore obtenir des tableaux d’étude de fonction comme sur et .

Une autre sérieuse limitation est que le moteur refuse bizarrement de travailler sur des expressions littérales contenant des inconnues nommées avec d’autres lettres que
x
.
S’agirait-il d’un moteur de calcul littéral avec un alphabet à 1 lettre ?


En fait non. Après avoir écumé les touches et menus, on se rend compte qu’il s’agit d’un alphabet à 2 lettres, le moteur de calcul littéral fonctionnant avec les lettres minuscules
x
et
n
. En pratique, cela nous donne une fois de plus des conséquences très agréables au niveau lycée. Il sera par exemple très aisé pour les élèves d’interroger le moteur de calculs pour lui faire recracher nombre de formules du cours, pour les exponentielles par exemple, à un renommage de variables près.

Même si cela reste très limité par rapport aux modèles haut de gamme, ce calcul littéral extrêmement basique pourra parfaitement couvrir les besoins de nombre de lycéens de séries non scientifiques pour lesquels les derniers sujets de BAC fournissent de plus en plus les expressions littérales à utiliser au lieu de les demander. Pour les séries plus scientifiques, si il y aurait un point à rajouter en priorité pour nous, ce serait la dérivation.

La calculatrice
NumWorks
une fois mise à jour fait du calcul littéral. Mais avec toutes les limitations que nous venons de lister, on peut toutefois se demander si son moteur de calcul mérite ou pas l’appellation "moteur de calcul littéral" et si dans l’affirmative on peut pousser jusqu’à l’appellation de "CAS" (Computer Algebra System) ou pas, tout dépendant des définitions que l’on retient. Cette nuance est en effet essentielle car nombre d’examens/pays interdisent le CAS (Portugal, Pays-Bas, Baccalauréat International, plusieurs examens américains…), et ce serait plus que dommage que la
NumWorks
s'y fasse refuser…


Quoiqu’il en soit, après mise à jour la
NumWorks
devient bel et bien capable de faire du calcul littéral. Nous ne pouvons honnêtement qu’en tirer un bilan extrêmement positif. Pour la première fois en ce jour historique, le calcul littéral devient accessible sans programmes additionnels
(qui de toutes façons seraient détruits par le mode examen)
sous la barre psychologique des 100 € et donc avec un prix à seulement 2 chiffres, 80€ pour rappel, c'est une véritable Révolution ! :bj:


3) Environnement de développement Python :
Go to top

L’application
Python
bénéficie pour sa part d’améliorations significatives présentées en avant-première au séminaire national d’Algorithmique au lycée le 20 novembre dernier, seule calculatrice à avoir l’honneur d’y être mentionnée d’ailleurs car seule calculatrice conforme aux évolutions du programme mises en oeuvre cette rentrée 2017 et auxquelles était dédié ce séminaire.

Jusqu’à présent l’éditeur de scripts
Python
de la
NumWorks
était en version beta, et était même jugé plutôt inutilisable en classe selon certains commentaires. De notre côté, nous l’avions toujours vu comme un aperçu certes limité - car probablement développé en vitesse - mais très encourageant, d’une fonctionnalité forcément destinée à évoluer rapidement. Un peu comme une démo jouable. Et voici aujourd’hui le grand jour. ;)

Oubliez le script unique à écraser et recommencer à chaque utilisation, l’application
Python
gère désormais plusieurs scripts *.py, que l’on peut librement rajouter, nommer, renommer et bien évidemment supprimer. Ils prendront alors la forme de modules pouvant être importés ou lancés directement
(standalone)
. :bj:

Niveau éditeur nous avons aussi de belles améliorations avec une indentation automatique se déclenchant sur les retours à la ligne après saisie de toute instruction introduisant un bloc
(boucles, conditionnelles…)
. On peut également remarquer que les espaces saisis en début de ligne sont désormais insérés et supprimés par paires. De quoi saisir plus rapidement du code Python respectant les conventions d’écriture et d’indentation
(indentation avec 2 ou 4 espaces)
, tout en économisant la durée de vie de sa touche espace. ;)

Avec le nouveau bouton s’appelant
console
ou
shell
selon la langue ou via l’exécution directe d’un script
(standalone)
, on a justement accès à une console de type REPL
(Read Eval Print Loop)
. Notons qu’il est possible pour chaque script existant de choisir si il doit être importé automatiquement à l’ouverture de la console via le bouton ou pas, ce qui évitera d’avoir à ressaisir les mêmes commandes d’importation à chaque utilisation. Cette console est particulièrement aboutie, permettant même de remonter dans l’historique pour copier une commande. En cas de déclenchement d’une erreur, elle précise même le numéro de ligne l’ayant déclenchée, permettant enfin une correction rapide du code. Dommage toutefois que l'éditeur ne numérote pas les lignes, surtout en cas d'erreur dans un script conséquent.

Mais ce n’est pas tout. L’éditeur ainsi que la console disposent désormais d’une formidable aide à la saisie via la touche
boîte à outils (toolbox)
. :D

On y dispose entre autres d’un catalogue listant alphabétiquement les fonctions disponibles, mais notamment en tête de liste tous caractères spéciaux et symboles utiles au langage
Python
qui n’avaient pas été inclus sur les touches clavier : :bj:
  • # pour les commentaires
  • % pour le reste d’une division euclidienne
  • \n pour les retours à la ligne dans des chaînes de caractères
  • \t pour les tabulations dans des chaînes de caractères
  • &, ^ et | pour les opérations bit à bit
Quant aux différentes fonctions suivant alphabétiquement ces caractères, on peut y accéder très rapidement en tapant leur première lettre au clavier. Cela manque toutefois d’intuitivité, puisqu’il faudra deviner qu’il faut taper manuellement
alpha
à chaque fois pour débloquer cette fonctionnalité.

On y trouve également des raccourcis pour créer rapidement des blocs d’instructions de boucles et conditionnelles, déclinés eux-mêmes en prime sous plusieurs modèles afin d’accélérer encore davantage leur saisie. :bj:

Enfin la boîte à outils permet de lister les modules disponibles intégrés, et donc de détailler et saisir rapidement les différentes fonctions qu’ils proposent. Outre le module de dessin
kandinsky
, on note l’ajout de deux nouveaux modules :
math
, ainsi que
cmath
pour les nombres imaginaires/complexes très utiles aux Terminales S, STI2D et STL-SPCL.

Profitons-en pour remarquer que toutes ces fonctions, qu’elles soient accédées par les modules ou par le catalogue, disposent d’une ligne explicative; une aide intégrée fort appréciable ! :bj:

Citons aussi la touche
var
qui, de façon complémentaire, permettra de lister les fonctions et variables globales existantes dans le contexte courant, c’est-à-dire définies dans les scripts importés et également dans le script courant si nous sommes dans l’éditeur.


Par défaut l’application est préchargée avec trois scripts d’exemples que l’on peut librement modifier :
  • factorial.py
    qui définit une fonction factorielle récursive
  • polynomial.py
    qui fournit une fonction permettant de récupérer en écriture décimale les racines réelles d’un polynôme du second degré
    (Première)
  • mandelbrot.py
    qui trace une fractale avec des paramètres légèrement différents de l’exemple de la dernière version, et constitue une réécriture intégrale en utilisant les fonctions et le module
    cmath
    .

Concernant la fractale, on peut toutefois bien évidemment modifier légèrement le programme pour lui redonner les mêmes paramètres que dans l’ancienne version et ainsi pouvoir comparer les performances :
version sans cmath
firmware 1.1.2
version avec cmath+fonction
firmware 1.2.0
Code: Tout sélectionner
import kandinsky
N=10
for x in range(320)
for y in range(222)
  zr=0
  zi=0
  cr=2.7*x/319-2.1
  ci=-1.87*y/221+0.935
  i=0
  while i<N and zr*zr+zi*zi<4
   i=i+1
   s=zr
   zr=zr*zr-zi*zi+cr
   zi=2*s*zi+ci
  rgb=int(255*i/N)
  col=kandinsky.color(int(rgb),int(.75*rgb),int(.25*rgb))
  kandinsky.set_pixel(x,y,col)
Code: Tout sélectionner
import kandinsky
def mandelbrot(N) :
for x in range(320):
  for y in range(222):
   z=complex(0,0)
   c=complex(2.7*x/319-2.1,-1.87*y/221+0.935)
   i=0
   while i < N and abs(z) < 2:
    j=j+1
    z=z*z+c
   rgb=int(255*i/N)
   col=kandinsky.color(int(rgb),int(.75*rgb),int(.25*rgb))
   kandinsky.set_pixel(x,y,col)

Appel avec mandelbrot(10)


On note un gain en performances significatif de près de 10%, le temps d’exécution passant de 2min30 à 2min17 ! :bj:



Conclusion :
Go to top

Finalement une très belle mise à jour. Notre classement QCC de rentrée 2017 qui classait la calculatrice
NumWorks
proche de l’entrée de gamme
TI-82 Advanced
n’est clairement plus d’actualité. La calculatrice a su évoluer très rapidement, et se doter d’une part d’un moteur de calcul littéral qui n’est plus l’apanage des modèles avec un prix à 3 chiffres. Le constructeur joue ainsi un rôle d’agitateur nous semblant aller dans le sens de l’intérêt des acheteurs et donc des lycéens français. D’autre part, la calculatrice a su se doter d’un environnement de développement Python complet, en conformité avec les nouveaux programmes de Seconde en vigueur depuis cette rentrée 2017. Si nous ne sommes clairement plus dans des fonctionnalités d’entrée de gamme et que le prix de milieu de gamme est désormais bien positionné, on peut toutefois se demander si la calculatrice
NumWorks
ne va pas finir par nous offrir au même prix des fonctionnalités haut de gamme, si bien sûr le développement continue au même rythme. :bj:

Par rapport au Python, il nous semble toutefois important de préciser qu’il manque encore un point essentiel qui empêchera à notre avis la machine d’être adoptée sérieusement pour son enseignement au lycée. L’activation du mode examen détruira en effet définitivement toutes les données saisies, y compris tous les scripts Python. Mauvaise surprise par exemple de découvrir après coup que le mode examen exigé pour le DS de Physique-Chimie aura détruit toute trace du projet d’ICN/ISN/TPE, ou du devoir/DM de Maths à achever pour le lendemain.
Précisons accessoirement que les scripts d’exemples préchargés n’échappent pas à cet effacement.
polynomial.py
qui aurait pu être très utile pour les élèves de Première disparaîtra donc également les jours d’évaluation. Petit détail, les scripts d’exemples ne réapparaîtront pas automatiquement après une désactivation normale du mode examen. Il faudra utiliser le bouton
reset
au dos de la machine.
Il faudrait selon nous pouvoir disposer assez rapidement d’une connectivité permettant d’importer et exporter à loisir ses scripts Python. Ce serait également le moyen en classe de s’échanger de proche en proche un support de travail fourni par l’enseignant, que ce soit le script du jour à étudier/modifier, ou de mini bibliothèques destinées à fournir quelques fonctions utiles clés en main pour construire les projets par dessus.

A très bientôt dans le fil d'actualités
NumWorks
on espère ! ;)



Liens
:
Lien vers le sujet sur le forum: Nouvel OS NumWorks 1.2.0 - Calcul exact+littéral et Python ! (Commentaires: 73)

TI-z80 Vote Program Of The Year ticalc.org 2017 - TI-Z80 monochrome

Nouveau messagede Lionel Debroux » 04 Déc 2017, 22:59

Ce qui est considéré comme le plus vieux site de la communauté TI toujours en activité (depuis 1996 !), et propose une quarantaine de milliers d'archives (!) en téléchargement,
ticalc.org
, vient de lancer le premier des 5 votes pour élire les programmes de l'année 2017 (
Program of the Year
, abrégé en
POTY
).

La première catégorie est pour la
famille 83+/84+ monochrome
, avec dix programmes en compétition cette année:


Nous vous encourageons à aller voter sur ticalc.org, parce que ce vote reste un rendez-vous significatif de la communauté, et il est bien sûr d'autant plus significatif qu'il y a plus de votants :)
Pour ce faire, il faut avoir un compte; pour les inscrits, le sondage est sur la page principale du site, toujours dans la barre de droite, en-dessous du flux Twitter.

Les autres votes à venir seront pour les
84+CSE (TI-Z80 couleur)
, les
83PCE / 84+CE (TI-eZ80)
, les
TI-68k
et les
Nspire
. Probablement dans cet ordre.
Lien vers le sujet sur le forum: Vote Program Of The Year ticalc.org 2017 - TI-Z80 monochrome (Commentaires: 1)

TI-z80 Chacha's pack, des niveaux Oiram CE hauts en couleur !

Nouveau messagede critor » 04 Déc 2017, 17:05

7698En ce mois de décembre,
Mario Oiram
est de retour pour un tout nouveau défi sur ta superbe
TI-83 Premium CE
. Il s'agit de
chacha's pack
, une série de 4 niveaux co-conçus par chacha & gam.

Chaque niveau dispose d'une couleur de fond différente car chacun fait dans un style de monde différent. Le style de trois d'entre eux emprunte à différents mondes tels qu'introduits dans le jeu
Super Mario Bros 3
sorti en 1990 sur console
Nintendo NES
(ou 1988 si l'on tient compte de la console
Famicom
japonaise)
. A savoir
green land
,
desert land
,
ice land
et
sky land
. Le quatrième quant à lui renvoie plutôt au jeu
Super Mario Bros
de 1985. Notons que les fins de niveaux sont dans le style de ce dernier avec de mini châteaux, et donc forcément parmi eux un
château dans le ciel
. ;)


Sauras-tu survivre suffisamment longtemps pour remarquer tous les petits détails que
chacha
et
gam
ont laissés à ton attention ? ... ;)


Rappelons que
Oiram CE
nécessite les bibliothèques C téléchargeables ci-dessous pour fonctionner correctement. Rien de compliqué, il y a juste à transférer les fichiers en question qui deviennent alors immédiatement fonctionnels. :)



Téléchargements
:
Lien vers le sujet sur le forum: Chacha's pack, des niveaux Oiram CE hauts en couleur ! (Commentaires: 10)

Divers Résultats catégorie HP concours Galactik rentrée 2017

Nouveau messagede critor » 03 Déc 2017, 13:01

Image

Après la publication du classement de la catégorie
Casio
dans un article précédent, voici aujourd'hui le classement catégorie
HP
de notre concours de rentrée 2017
Galactik
! :bj:

Erwin R.
arrive
8ème
avec une disposition en 4 pôles dont un central, évaluée à .


quant à lui arrive au bout de
7 participations
à une disposition tripolaire valant , se classant ainsi
7ème
.


Comme promis tous les participants précédents gagnent un compte
TI-Planet Premium
, et si ils en avaient déjà un il leur est parfaitement possible d'en faire don à une autre personne.

Voici maintenant les mentions honorables ainsi que les gagnants, pour ces derniers dans l'inverse de l'ordre dans lequel ils pourront puiser dans la dotation annoncée afin de composer leur lot.

Dubs
en
6ème
position reste sur une disposition tripolaire avec son score de

@Dubs, comment as-tu fait pour devenir multimillionnaire ?

Dubs a écrit:Je ne connaissais pas le langage de programmation de la HP Prime et le concours m'a donné un prétexte pour l'apprendre.
Je ne cherchais pas à obtenir le meilleur score, seulement apprendre le langage.
J'ai donc récupéré le source de l'appli Galactik et regardé comment il fonctionnait.

Ensuite je l'ai modifié pour qu'il cherche tout seul le meilleur score possible via force brute.
Je regroupe toutes les étoiles en haut à gauche et les déplace vers le bas/droite. je bouge une étoile d'un pixel, regarde le score et recommence jusqu'à ce qu'elle sorte de l'écran. Là je la replace en haut à gauche et bouge la seconde d'un pixel, etc.
Après une soirée passée à déplacer les étoiles pixel par pixel j'ai arrêté les frais, ça prendrait trop de temps par cette méthode.

Je l'ai améliorée un peu pour aller gagner en vitesse.
La position de départ est tirée aléatoirement, ensuite je bouge chaque étoile de quelques pixels vers un score plus élevé.
Ex: j'ai un score de 40, je bouge la première étoile vers la gauche d'un pixel pour un score de 39, vers la droite pour 40, vers le bas pour 41 et le haut 38.
Je déplace donc cette étoile vers le bas et passe au déplacement de la suivante. Je boucle sur toute les étoiles et retourne à la première jusqu'à ce que le score stagne.
Je sauve la positions des étoiles et le score obtenu.
Je repositionne les étoiles aléatoirement jusqu'à ce que leur position de départ dépasse le score actuel, puis les déplace pixel par pixel pour augmenter un peu le score.
Avec cette méthode et plusieurs heures de calcul j'avais obtenu un score dans les 104 millions.
Cool

Là je me suis dit que ce n'était pas très glorieux comme procédé et que j'allais plutôt essayer d'avoir un bon score en déplaçant les étoiles sans aide logicielle.
J'ai passé quelques soirées à déplacer les étoiles à la main, sans logique particulière, pour arriver à mon score final.

That's all.

Et au passage merci à TiPlanet pour ce concours !


Dimitri U.
arrive quant à lui à faire mieux après seulement
2 participations
avec un seul amas d'étoiles, terminant avec à la
5ème
place.

@Dimitri, comment as-tu fait pour accumuler autant de millions ?

Dimitri U. a écrit:Tout d'abord merci pour ce jeux bien sympathique. Au départ je voulais analyser l'algorithme mais faute de temps j'ai été au simple pour moi ; j'ai voulu faire confiance au hasard. J'ai modifié le programme pour que le déplacement et le changement d'étoile se fassent aléatoirement. J'ai laissé tourner sur mon PC le programme depuis la calculatrice virtuelle. Régulièrement je regardais le score obtenu. Après un certain temps, beaucoup de temps en fait, le meilleur score obtenu était catastrophique. En parallèle j'ai remarqué après quelques essais que j'obtenais mon meilleur score en regroupant dans une même zone toutes les étoiles. Quelques jours avant la fin du concours, je me suis résolu à ne plus faire confiance au hasard et essayer d'augmenter par moi-même mon score honorable, pour finir classer en 5ème position.


C'est en positionnant cet amas unique d'étoiles au centre que arrive à faire encore mieux après seulement
2 participations
avec et à finir ainsi
4ème
.

@TheMachine02, comment as-tu fait atteindre un aussi bon score ?

TheMachine02 a écrit:Alors globalement, j'ai commencé par refaire le programme de calcul des scores en C. Après j'ai essayé un premier bruteforce qui partait de positions aléatoires et tentait d'optimiser localement le système planétaire, en cherchant les meilleurs positions. Chose intéressante, j'ai pu créer des images de style heatmap, ce qui m'a permis de me rendre compte qu'on trouvait des distances optimales entre certains couples d'étoiles. Puis j'ai un peu tatonné directement sur émulateur afin de trouver la meilleur position en fonction des couples que j'avais trouvé. Et comme j'avais plus le temps, j'ai rien fait d'autre :p


En
3ème
position
Cyril S.
met un peu d'ordre en redisposant cet amas d'étoiles central selon un quadrillage triangulaire, arrivant ainsi à atteindre un score de .

@Cyril, quel est ton secret ?

Cyril S. a écrit:Quand j’ai découvert le concours, pour des raisons de facilités, j’ai commencé à chercher dans la catégorie Numworks, où j’ai posté un premier score trouvé empiriquement. Bien qu’appréciant les calculatrices, je suis totalement novice dans la programmation sur calculatrice ou simplement le transfert de fichiers.
Puis j’ai chargé le programme pour ma Casio CP400 (que j’ai depuis deux mois), même si les lots ne m’intéressait pas vraiment. Après avoir essayé de déplacer fastidieusement les étoiles et pensé que soit j’avais mal fait l’importation, soit que le programme était bogué, j’ai chargé l’émulateur HP Prime, et j’ai vraiment commencé à être méthodique.
J’ai commencé par placer toutes les planètes en haut de l’écran, j’ai descendu la première, puis les autres une à une, afin d’établir un tableau répertoriant les différentes interactions avec des --, -, +, ++, tableau qui correspondra à la matrice G. Cela m’a permis de voir la distance 20 revenant pour les interactions positives.
J’ai ensuite copié le programme dans Notepad++, afin de l’indenter, et l’analyser en détail. J’ai découvert le fonctionnement du ranseed, puis compris comment le score était calculé. J’ai créé une liste avec les valeurs du ranseed(42) que j’ai exportée vers Excel, elle m’a permis de créer la matrice G.
Puisqu’il fallait placer les planètes avec une distance de 20, sur papier, j’ai disposé les planètes sur un maillage en formant des triangles équilatéraux en fonction des valeurs de G, en trouvant les coordonnées avec un peu de trigonométrie. Et j’ai obtenu un score aux alentours de 121 millions.
Pour essayer d’améliorer, j’ai repris Excel et créé une succession de matrices afin d’y calculer directement le score et d’utiliser les algorithmes du solveur. Que ce soit clair, il s’en sort peut être bien pour une fonction du second degré, mais là, il y a beaucoup trop d’extrema locaux, et globalement, il n’a presque jamais été en mesure d’améliorer la position initiale donnée, parfois quelques centièmes grappillés quand même.
J’ai fini par trouver à la main encore une réponse un peu meilleure avec 124,4 millions que je n’ai pas postée. Je comptais la garder pour revenir dans la catégorie HP, après avoir posté des résultats dans d’autres catégories, mais des vacances m’ont empêché de poursuivre mes recherches.
Je regrette quand même de ne pas avoir posté le score de 9,4 millions que j’avais trouvé sur CP400, puisqu’aucun score n’a été envoyé avec cette version du programme.

Ce concours était très intéressant, j’ai découvert la HP Prime via son émulateur, et je l’ai vraiment appréciée, la programmation y est compréhensible assez vite.
galactik HP Casio.xlsx
(43.6 Kio) Téléchargé 9 fois


En permutant plusieurs étoiles sur ce quadrillage triangulaire, arrive à monter jusqu'à et donc à se classer
2nd
après avoir persévéré pendant
7 participations
.

@hpfx, comment t'y es-tu pris pour disposer tes étoiles ?

hpfx a écrit:Ha c’est ici qu’on raconte sa vie, je vai battre le record du post le plus long alors ;)
Je vais essayer de me rappeler, c’est déjà une histoire ancienne, vu que ça fait au moins 3 semaines que j’ai plus rien fait.

Chapitre 1 : le temps « soyons bourrin »

Au départ je suis parti sur un brute-force mais sans tester tous les pixels, je découpais en grille de 20 (ça donne rapidement des scores très honorables, et pour cause…)
Puis j’enchaine sur un petit algo «
pathfinding
» qui recherche à déplacer chacun des points d'abord dans les 4 directions à la recherche d’un minimum local. (puis plus de direction par la suite, [en diag, en cavalier/echec], puis même en sautant carrément plusieurs pixels :facteur 2,3,5…). Je crois que ça faisait en gros ~80 directions possibles.
Ensuite, J’essaie le déplacement deux à deux (2 étoiles au hasard, en testant toutes les combinaisons de déplacement possibles genre 80*80 cas), algo «
move2
»
Ensuite J’essaye alors de déplacer toutes les étoiles en même temps (anecdote pour la suite : et là je me rends compte que le meilleur placement possible est au centre), algo «
globalmove
»
Voilà donc dans un 1er temps, j’enchaine les algo
grid20
,
pathfind
,
move2
,
global-move
. (plusieurs tests avec des variantes etc…) Les résultats sont très bons . Les étoiles sont a peu prêt disposées en carré (normal vu le choix « grille » du départ)

Et dans ma lancée je me dis que je vais affiner avec une grille plus resserré, mais contrairement à mon attente il se trouve que ça n’améliore pas les résultats…

J’entame un nouvel algo de placement initial : placement aléatoire, puis déplacer les étoiles de manière récursive (pour les 80 directions), je déplace l’étoile même si le score est inférieur à sa position initiale, pour contrer le phénomène « minimum local ».
Je calcul en siècles le temps de faire tous les cas, je suis donc obligé d’implémenter un casseur de récursivité une fois arrivé à 500.000 tests (ce qui m’amène déjà à des profondeurs de récursivité 30). J’appelle cet algo «
tree
». c’est assez long car même si je casse après 500k, car il enchaine avec l’étoile suivante du 1er niveau, ça fait donc 500k * le nombre d’étoile.

Une fois mon meilleur arbre de déplacement trouvé pour un « run », je lui applique
pathfind, move2
, et
globalmove
. Et j’ai plus qu’à lancer plusieurs fois ce process.
Avec cet algo je serais 4eme de ma catégorie aujourd’hui avec 118 (pour info le meilleur score publié de l’époque était de 44). Les étoiles sont à peu près disposées en hexagone. C’est une réussite.
J’ai pas publié mon résultat, car je m’amusai alors à essayer de faire 100.000.000 tout rond pour le fun, en jouant avec les décimales des étoiles car on pouvait depuis peu avoir des nombres réels. Jusqu’à présent tous mes algo travaillent en entier. je ne suis pas arrivé à supprimer complètement les décimales, pour ça que non publié. J’ai bien remarqué le positionnement en hexagone, mais vu que je croyais être largement devant, que j’y avait passé des heures, je me contentai de 118 (je comptait passer 120 avec de petits ajustements...)
Alors que je travaillai juste à
réduire
mon score à 100... et bim, je vois qu’un concurrent publie à 140 « et là c’est le drame :) »

Chapitre 2 le temps « réfléchissons un peu pour changer »

Ok je modifie mon algo «
tree
» pour faire des déplacements « en étoile » à 30° pour voir, en quelques minutes je monte à 138. Pas mal, mais toujours inférieur à 140.
Et là j’ai
enfin
l’idée d’essayer de comprendre le calcul...
Très rapidement on voit bien que les points doivent être à une distance de 20 les uns des autres (car c’est « la valeur absolue de la distance moins 20 » qui compte dans le calcul), et que ça doit être centré, car on compare avec la première étoile qui est fixe et au centre.
Du coups depuis mon meilleur résultat (118) je repère en gros la position des étoiles, et je positionne « mathématiquement » les points sur la calto direct (sans algo) juste en modifiant les valeurs de la liste grâce à la notation exponentielle des complexes (par exemple point 1 = Z0 + 20*exp(i*pi/3)) et la direct 138 B-) Yes !
Je regarde les placements de tous mes bons scores (entre 110 et 118) et je remarque qu’il y a plusieurs configurations possibles en fait(ça donne de l’espoir), bon après coups j’ai compris que ce n’est pas vrai : il n’y a qu’une seul conf, il s’agit juste de symétrie ou rotations...

Sur cette base, et plein d'espoir, Hop un nouvel algo, au départ : tous les points confondus au centre, 6 déplacements possibles (à 20 pix) … en quelques secondes j’arrive enfin à 140, et je suis premier de quelques millièmes.

Chapitre 3 « j’ai compris »

Alors que Monsieur 140 me repasse devant le lendemain, je comprends qu’il n’y a qu’un seul bon placement, et qu’il faut jouer sur la rotation. En effet, la matrice ne régît que la position
relative
des points, mais en aucun cas leur placement absolu, on peut donc faire des rotations !
J’ai fait un petit algo qui fait tourner les points autour du centre. Merci la formule de la rotation des complexes : z* exp(i*angle), bon bien sûr il faut le faire par rapport au centre Z0 : (z-Z0)*exp(i*angle)+Z0
Ca marche ! B-)
Mais même avec un pas de rotation de pi/1000000 je ne peux pas faire mieux que décimale 0.223 (déjà pris), je publie donc 0.222 et voilà. Le lendemain un 3eme concurrent trouve aussi la méthode et publie 0.221. tout a été hyper vite.

Conclusion

Je me suis éclaté sur ce concours. un gros boulot d'algo (dont certain peu utilisé à la fin) puis clairement une réflexion mathématique.
Un grand merci aux organisateurs. c'était hyper fun.
au passage si critor m'a lu jusqu'ici, comme Zezombye, moi aussi je préfère que ça soit mon pseudo d'affiché.

Au passage,
Ce qui m’intrigue c’est le concurrent hp qui est à 121,
En effet j’ai eu des seuils difficiles à franchir en particulier 118, je serais curieux de savoir sa méthode/algo pour faire 121.
https://tiplanet.org/forum/viewtopic.php?f=49&t=20678&start=10#p223559


Honourable distinction for . By turning over and rotating the previous constellation, he achieved . But such participation couldn't be ranked, as the exact same score had already been submitted by someone else. He then managed to be accepted by slightly moving some stars and thus slightly lowering the score to the never submitted . This makes
4 participations
. But he finally moved to the TI category.

@jacobly, how did you manage to achieve such a high score ?

jacobly a écrit:I used simulated annealing programmed in C to get all of my scores. Initially I assumed that I was restricted to integer coordinates which was difficult to optimize and didn't produce very good scores. Then I found out that other people were getting higher scores with fractional coordinates so I switched to a continuous algorithm. At some point I noticed that most of my good configurations had the stars near a "hexagonal" lattice of points where each point is 20 units away from 6 other points. I used this information to create another discrete implementation that only considered the points on this lattice. This let me find close to an optimal score fairly quickly, which I could then polish off by alternating two continuous algorithms. Since I was working with binary floats the whole time, I had no reasonable way to fully optimize the last digit when computed with decimal rounding error, and I ended finding a solution within an ulp of first place in 3 categories.
https://tiplanet.org/forum/viewtopic.php?f=49&t=20678&start=10#p223474


By rotating this same constellation another time, ranks
1st
by improving the high score up to after submitting
3 participations
.

@Hooloovoo, we're waiting for your explanations.

Hooloovoo a écrit:The first step to solving Galactik was to understand how exactly the score is computed from L8.
I'm not going to go over the details of figuring out the dense HPPPL program, but I'll give a brief overview of how the score is computed.
Each point is stored as a complex number in L8. I think the easiest way to think of it is as a weighted complete graph. Basically, there is an operation computed between every pair of points, and the score is the sum of those operations.
There is a in pseudocode, the get_score(L8,weight_matrix) looks like:
There is also set up a list of weights between each edge
Code: Tout sélectionner
get_score(L8,weights):
    s=0
    for p from 2 up to N_PTS:
        for i from 1 to p-1:
            if i == 1 and weights[i][p]<0:
                score += weights[i][p] / (1 + abs(L8[i] - L8[p]))
            else:
                score += weights[i][p] / (1 + abs(20-abs(L8[i] - L8[p])))

a couple notes on that:
since L8 is a list of complex numbers, abs(L8[ i ]-L8[p]) finds the distance between them.
for each pair of points, the distance is evaluated once, and depending on the weight, things are evaluated differently: for positive weights, it is best if the distance is close to 20, and for negative weights, they should be far apart
There is a special case for the first point, such that it is best if all points are close to it, since those edges always have positive weight.
I used simulated annealing in python to figure out some optimal solutions. Once I had that I made it work on the calculator because I could. That got me to 129e6, but the points looked like they were exactly 20 away from one another when plotted, in a hexagonal grid. that shouldn't have surprised me, really.
I assumed that the points all lie on a triangular grid with spacing of 20. I modified the program so it would only check for solutions on that triangular/hex grid, and I got very near the final score, only a few fractions of a point away.
s solution was near the correct local minimum, but I didn't do any optimization on that. small deviations could change the score slightly.
Unfortunately, there is a huge difference between standard IEEE 754 floats and HP's floating point representation. I couldn't write up this next optimizer in python, because I didn't know how exactly the calculator does floating point math!
The next solution I posted, I think, was based on an SA approach running on the virtual Prime starting from the previous solution.
I found that starting the SA optimizer from different rotations of the same pattern (since the energy function doesn't care about rotation, mod weird FP effects) and even different random seeds, resulted in different final scores.
I'm not convinced that there is a general-purpose optimizer that I could use for this. There probably is.
I already had a SA optimizer coded up, and computers are fast, so I decided to use brute force. I started the optimizer from each successive starting location, rotating the original pattern by a small delta each time those until I couldn't get any better.



Merci à vous tous pour vos efforts, mais aussi pour vos très nombreux messages positifs d'encouragements ou remerciements ayant accompagné vos participations et comptes rendus de recherche. Nous allons donc dès maintenant commencer à travailler sur un nouveau sujet qui sera proposé aux partenaires et constructeurs pour l'année prochaine - à bientôt on espère. ;)
Et bien évidemment, remerciements au constructeur pour nous avoir fait confiance.

Lien vers le sujet sur le forum: Résultats catégorie HP concours Galactik rentrée 2017 (Commentaires: 18)

Divers Connecteur batteries TI 2010-2014(Nspire, 84+C...) identifié

Nouveau messagede critor » 28 Nov 2017, 20:10

38117473Dans ses calculatrices fabriquées depuis avril 2014,
Texas Instruments
intègre des batteries que les menus de diagnostics appellent
Samsung
. On peut justement aisément les remplacer par les batteries
AB474350BU
ou
EB494353VU
prévues pour de vieux téléphones
Samsung
à clapet. Cela concerne les :
  • TI-83 Premium CE
  • TI-84 Plus CE
  • révisions matérielles O+ des
    TI-Nspire CX

Les modèles fabriqués antérieurement, de janvier 2010 à mars 2014, utilisaient une batterie différente munie d'un câble, appelée
Getac
par les menus de diagnostics. Cela concerne les :
  • TI-84 Plus C Silver Edition
  • révisions matérielles A-N des
    TI-Nspire CX
  • TI-Nspire CM
  • TI-Nspire TouchPad
  • TI-Nspire Lab cradle
  • TI-Nspire Navigator cradle v2

90269024Si tu es muni·e d'un de ces appareils et bien bonne nouvelle, car la connectique utilisée vient enfin d'être identifiée ! Il s'agit de
micro JST 4 broches au pas de 1.25mm
. :bj:
Te voilà donc enfin capable de récupérer les pièces aussi bien pour remplacer le connecteur ou la fiche en cas d'accident, que pour bricoler si tu veux t'amuser par exemple à caser une batterie haute capacité, à te fabriquer un adaptateur secteur ou encore pourquoi pas un chargeur de batterie dédié. ;)
Lien vers le sujet sur le forum: Connecteur batteries TI 2010-2014(Nspire, 84+C...) identifié (Commentaires: 0)

NumWorks Dumpe et reflashe facilement ta NumWorks depuis Chrome !

Nouveau messagede critor » 27 Nov 2017, 22:52

Pour mettre à jour ta calculatrice
NumWorks
tu avais jusqu'à présent deux solutions :
  • visiter la page du Workshop NumWorks où tout se déroulait automatiquement dans ton navigateur Internet sans te demander ton avis
  • installer le SDK où tu pouvais alors librement compiler et/ou spécifier le
    firmware
    à programmer
Si tu souhaitais reflasher ta calculatrice
NumWorks
avec le firmware de ton choix, ben justement pas le choix, tu te devais d'installer le SDK. SDK dont l'installation n'est pas triviale de base, et génère en prime quelques difficultés additionnelles selon le système d'exploitation de ton ordinateur...

Mais depuis la semaine dernière,
NumWorks
a changé le processus de mise à jour pour utiliser l' avec le navigateur
Google Chrome
. Pour cela, la page de mise à jour diffuse pour
Windows
un pilote
DFU
(Device Firmware Upgrade)
, là encore un standard... ;) Sur macOS et Linux, pas besoin de pilote additionnel :)
Ce qui implique que ta calculatrice
NumWorks
peut désormais être reprogrammée par n'importe quel outil tiers prévu pour ce standard ! Si si, pas besoin d'attendre le bon vouloir du constructeur comme sur d'autres modèles, ça c'est de l'ouverture ! :bj:


On peut par exemple utiliser
(sous le navigateur
Google Chrome
)
la page de démo
dfu-util
du projet
Github
webdfu
:
  • Si tu es sur Windows, il te suffit d'installer le pilote
    DFU
    si ce n'est pas encore fait
    Pour Linux, c'est un fichier à mettre dans /etc/udev/rules.d, et sur macOS, il n'y a rien à faire :)
  • Connecte alors ta calculatrice en USB.
  • Enfonce et relâche son bouton
    reset
    à l'aide d'une pointe de porte-mine par exemple.
  • Si tu as tout fait correctement, cliquer sur le bouton
    Connect
    de la page en question te fera apparaître un périphérique
    STM32 BOOTLOADER
    qu'il te suffit de sélectionner et valider.
  • Te seront alors listées les interfaces DFU disponibles pour ce périphérique, et c'est l'interface
    Internal Flash
    qui nous intéresse aujourd'hui, à sélectionner et valider.


Une fois tout ceci fait, tu peux enfin librement sélectionner l'image firmware de ton choix parmi tes fichiers et la programmer sur ta calculatrice à l'aide du bouton
Download
. :bj:

Et surprise, tu trouveras même un peu plus bas un bouton
Upload
qui inversement te permettra de récupérer une image du firmware actuellement installé sur ta calculatrice ! :bj:
De quoi peut-être récupérer et archiver de vieilles versions avant de les écraser avec une mise à jour, ou encore pour les étudier. :)
Nous venons par exemple de sauvegarder correctement la version 1.1.2 qui n'est plus distribuée par le site officiel, et comme prévu on récupère bien 1Mio de code.



Téléchargement
:
pilote (Windows)
DFU
pour
NumWorks
(pas besoin sur macOS ou Linux)
Lien
:
https://devanlai.github.io/webdfu/dfu-util/
Lien vers le sujet sur le forum: Dumpe et reflashe facilement ta NumWorks depuis Chrome ! (Commentaires: 0)

-
Rechercher
-
Sujets à la une
"NumWorks++": Challenge de modification matérielle pour rajouter une puce de mémoire Flash !
Offre TI-Planet/Jarrety pour avoir la TI-83 Premium CE avec son chargeur pour 79,79€ port inclus !
Offre TI-Planet/Jarrety pour avoir la TI-Nspire CX CAS à seulement 130€ TTC port inclus!
Jailbreake ta TI-Nspire avec Ndless et profite des meilleurs jeux et applications !
Transforme ta TI-Nspire CX en console Game Boy Advance!
12345
-
Donations/Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
PayPal : paiement en ligne sécurisé - secure online payments
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety 
-
Stats.
556 utilisateurs:
>465 invités
>85 membres
>6 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)