Galapagos metodi giusti

con Galapagos mi capita di dover comparare la differenza di punti, cioè: (abs(pt1) - abs(pt2))
a volte con questo metodo trovo problemi (essendo che è impossibile arrivare a 0)
nel senso che non si blocca mai anche impostando una tolleranza più ampia
oltre alla sottrazione indicata sopra, ho provato anche ad indicare come risultato la distanza tra il pt1 e pt2
ora volevo chiedere se i due metodi vanno bene entrambi?

poi impostare MaxStagnant/Population di Evolutionary Solver,
ad un numero minore comporta che ferma prima l’esecuzione di Galapagos?

oppure esiste un componente preposto come “curve proximity”?

Salvio perdona: non trovo una risposta da dare se non che leggendo il numero che viavia tende a rimpicciolire puoi fermare il calcolo quando vedi che non si migliora.

l’importante è che i due metodi “(abs(pt1) - abs(pt2))” e “Distance pt1 e pt2” sono corretti. . . .

I primo metodo non lo capisco … cosa vuol dire corretti?

ciao Sergio, la domanda l’ho posta collegandola alla seconda domanda,
che Galapagos, ci mette tempo a terminare oppure continua all’infinito

entrambe le soluzioni sono collegati a punti che si muovono finché non trovano il valore minimo
quindi Galapagos con Distance tra i 2 punti si ferma quando la distanza è pari a 0
la stessa cosa succede con la sottrazione dei punti, Abs serve per non avere < 0

quindi come dicevo, la domanda mi serviva a capire se esisteva qualche metodo più consono/idoneo
essendo che queste due soluzioni ci ho ragionato io e potrebbe servire qualche “aggiustamento”. . . .

ps "forse è abs(pt1 - pt2)” da un risultato poi Galapagos li sposta e la sottrazione da un’altro risultato
e continua finch’é il risultato arrivi al minimo consentito essendo che per variabili può non essere 0

Il controllo dell’errore è certamente corretto. Probabilmente l’errore sta nella correzione
ad ogni interazione.

quindi andrebbe anche bene, ma ci potrebbero essere problemi ad ogni sequenza?

Con che principio modifica la posizione del/dei punti?
Comunque senza conoscere il problema si fa poca strada.

tramite spostamenti rotazioni ecc

ps non so se ti è mai capitato tramite Py/Common ecc di avvicinare un punto all’altro
ma credo che la procedura in un linguaggio o in un’altro ma il metodo/i sono identici. . . .

Ripeto: non hai esposto con chiarezza cosa vuoi ottenere.
Forse cerchi la distanza minima tra 2 nurbs (e quindi i rispettivi punti)? Non è un giochetto.

Non puoi partire da 2 punti e spostarli secondo una regola, che so, punto medio e le nuove
posizioni calcolate attraverso curveclosestpoint. Anche con il metodo di newton raphson
non trovi sempre la soluzione.
Visto che vuoi eseguire operazioni semplici l’unica, come suggerito nell’altro post è macinare
il confronto tra punti determinati semplificando superfici e curve con mesh e spezzate per
poi confrontare tutti i vertici. E’ semplice ma ottieni molte combinazioni.
Ad esempio il confronto tra 2 curve approssimate con 100 punti cadauno, il numero di
combinazioni sarà 100 x 100 …

per questo già feci un post tempo fa, e Giuseppe in Gh con l’ausilio di Galapagos
postò la soluzione, ma in quel caso c’era un componente preposto a ciò, “Proximity”

io invece parlo di fare la stessa cosa solo con i punti. per dare un’idea es:

essendo che l’angolo tra il punto iniziale e quello finale è di 45°
mentre lo slider è impostare fino a -40° non arriverà mai alla fine

una mezza risposta con questo esempio l’ho trovato:
MaxStagnant sarebbero una specie di “Step”
Population invece i calcoli da fare ad ogni Step
quindi diminuendo l’uno o l’altro Galapagos termina prima
strano che mi è capitato non poche volte che andava oltre la soglia impostata di default di 50 e 50 :thinking:
e ora tenendo conto di quanto hai detto “Non è un giochetto.” e rileggendo anche ciò che aveva scritto Giuseppe “Non è facile fregare il componente “Proximity”…” quindi i miei dubbi sull’efficacia di una definizione come postata in foto, e quindi anche sui parametri MaxStagnant e Population aumentano. . . .

Sergio, ora non so tu cosa avessi pensato, ma tempo fa con questo codice ruotavo un triangolo
ovviamente per chi è esperto come te, una cosa simile non la prende nemmeno in considerazione
quindi a questo punto mi chiedo, se i problemi che intendevi con codici più complessi si potrebbero
verificare anche per i due esempi che ho postato sia in Py che in Gh essendo che a volte non si ferma?
oppure questa esecuzione continua, si tratta di tutt’altro (escludendo che si possa trattare di tolleranza)

Mi dispiace Salvio ma proprio non riesco a capire …
Attento al codice a lato dei due triangoli perchè presenta un potenziale baco:
se il lato è “grande” la rotazione di 0.1° può essere eccessiva e portare a spostamenti maggiori
della tolleranza ad ogni passo. In generale quando si eseguono codici similari è obbligo
inserire un contatore per non avere errori loop infinito.

hai ragione, mi era capitato infatti. forse questo era un primo file poi mi sembra che l’ho modificato, si è giusto il fatto di mettere un contatore bisogna calcolare bene se aumentano i decimali sono tanti i cicli.

ps potresti replicare la def in Gh cosi vedi in pratica cosa succede. credo che sia simile al codice in Py.

Non ha senso ruotare a caso un oggetto. Trovi l’angolo di inclinazione e imponi la rotazione all’oggetto.
Purtroppo non uso py e gh …

si ma erano esempi per far vedere come usavo la parte d’interesse di cui parlavo (a prescindere da Gh)

abs

Si ma tu mi fai vedere una immagine per me priva di significato …
Genoma? Fitness? Una persona normale che può capire? Cromosomi
evoluti tramite fitness???

ahahahah quindi chi usa Gh è anormale :rofl: :rofl:

infatti per proporti un parallelismo tra Gh e uno Script ti ho postato Abs(pt1 - pt2)

ps sottolineo l’intento del post, cioé capire se il metodo Abs(pt1 - pt2) o Abs(Abs(pt1) - Abs(pt2)) va bene
essendo che a volte Galapagos continua oltre i settaggi di MaxStagnant/Population mi serve per escludere
un probabile errore nella parte finale della definizione oppure debbo tenere in considerazioni altri parametri?

i due esempi in modo differente concludono alla stessa maniera e qui credo che puoi pronunciarti. . . .

C’è poco da ridere! Non ti rendi conto di parlare con concetti senza senso.
Al concetto MaxStagnant - massimo stagnante - potrei risponderti in un
contesto di depurazione acque di dilavamento di un impianto fognario.
Ma non penso tu voglia sapere questo.
Devi spiegare il problema in parole semplici.
Mi sembra piuttosto immediato che in un triangolo rettangolo la somma della
lunghezza dei lati sottesi dall’angolo retto è minore della diagonale: teorema
di pitagora. Quindi la condizione abs(Dx+Dy+Dz) è più restrittiva. Disegna un
segmento 3d. Fai il bounding box capirai subito cosa stai facendo operando
con la distanza oppure con Abs.

Se intendi per “lati sottesi dall’ angolo retto” i cateti e per “diagonale” l’ipotenusa allora la somma della lunghezza dei cateti è maggiore della lunghezza dell’ipotenusa.
Se mi sbaglio chiedo perdono a Pitagora.
Sono d’accordo con te che un’ esposizione del quesito in parole più semplici sarebbe auspicabile.

2 Mi Piace