Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  CATIA V5 Allgemein
  Parametergenauigkeit

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für CATIA & Co.
  
erp4cad: Das ERP für komplexe CAD-Projekte!, eine Pressemitteilung
Autor Thema:  Parametergenauigkeit (3250 mal gelesen)
mellas
Mitglied
Student


Sehen Sie sich das Profil von mellas an!   Senden Sie eine Private Message an mellas  Schreiben Sie einen Gästebucheintrag für mellas

Beiträge: 29
Registriert: 14.03.2012

CATIA V5R21

erstellt am: 25. Okt. 2012 08:51    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Guten Morgen!

edit:
Meine Problembeschreibung unten ist vielleicht etwas verwirrend, darum versuche ich, meine Frage/Problem ohne Beschreibung des Hintergrunds nochmal auf den Punkt zu bringen:
Was muss ich berücksichtigen, damit der PEO bei der Variation der freien Parameter die angegebene Schrittweite berücksichtigt?
Trotz Angabe einer großen Schrittweite verwendet die Optimier-Routine sehr kleine Inkremente und benötigt dadurch unnötig viele Iterationen.
/edit


Kann man die Genauigkeit (also die Zahl der Nachkommastellen) von Parametern vom Typ "reelle Zahl" festlegen?
Mein Problem: ich möchte mit dem Product Engineering Optimizer einen Parameter optimieren, der von mehreren Integer-Parametern abhängt. Da der PEO aber keine Ganzzahlen als freie Parameter akzeptiert, muss ich reelle Zahlen als freie Parameter verwenden und folgenden Umweg gehen:

Code:
GanzeZahl.1=round(ReelleZahl.1)

Jetzt tritt das Problem auf, dass der PEO die freien Parameter irgendwo hinter der 5./6./7. Nachkommastelle verändert, was aber keinen (großen) Einfluss auf meine Ganzzahl-Parameter und den Zielwert hat. Die Optimerung bricht dann nach der vorgegeben Anzahl von Iteratiosschritten bzw. nach X Aktualisierungen einfach ab ohne das Ergebnis nennenswert verbessert zu haben.
Ich habe sowohl in der Optimierung als auch im Strukturbaum eine Schrittweite von 0,5 vorgegeben und die Startwerte der freien Parameter auf ganze Zahlen gesetzt - aber ohne Erfolg, denn der Optimierer jongliert immernoch mit den letzten Nachkommastellen von 12,608943254634 rum.
Ich habe jetzt die Idee, irgendwie (aber wie?) zu erzwingen, dass die freien Parameter/reellen Zahlen nur Werte in 0,5er-Schritten annehmen können.

------------------
viele Grüße
Arne

[Diese Nachricht wurde von mellas am 26. Okt. 2012 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

xam0560
Mitglied
Konstruktion / Administration


Sehen Sie sich das Profil von xam0560 an!   Senden Sie eine Private Message an xam0560  Schreiben Sie einen Gästebucheintrag für xam0560

Beiträge: 445
Registriert: 11.08.2008

@Work
Xeon W3565
24Gbyte (DDR3-2000 MHz
AMD Fire Pro V5900 (Fire GL V)
256GB SSD (Samsung SSD 830)
500GB HD502HJ 7200Umin.
Win. 7 prof. 64bit
Pro-E Wildfire 4.0
Creo
Windchill PDM-Link 10.0
ACAD 2013 + Athena Aufsatz
ACAD 2011 % 2012
Catia V5 R19 SP9
HICAD 2014 SP2
Helios 2014
Inventor 2014
Rhino 5.0
@Home
I7 920 Extreme
6 GByte (DDR3-2000 Mhz)
ATI Radeon HD 5850
2x WD 1TB
4x Seagate a 2TB
2x WD 5TB im Raid 1
1x Samsung SSD 850 Pro 500Gb

erstellt am: 26. Okt. 2012 10:41    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mellas 10 Unities + Antwort hilfreich

???? Ich versteh die Frage bzw. die Fragen nicht ???

  Ich glaub mir fehlt ne Windung für diesen Text. 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mellas
Mitglied
Student


Sehen Sie sich das Profil von mellas an!   Senden Sie eine Private Message an mellas  Schreiben Sie einen Gästebucheintrag für mellas

Beiträge: 29
Registriert: 14.03.2012

CATIA V5R21

erstellt am: 26. Okt. 2012 11:21    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Zitat:
Original erstellt von xam0560:
???? Ich versteh die Frage bzw. die Fragen nicht ???

    Ich glaub mir fehlt ne Windung für diesen Text.  


Da mein Problem etwas konfus (beschrieben) ist, geht die eigentlich Frage unter, darum versuche ich es nochmal mit einer bildlichen stark vereinfachten Beschreibung:
Ich habe eine Fläche mit den Abmessungen a x b, auf die ich möglichst viele gleiche Kisten mit der flächigen Abmessung c x d stellen will. ("Wie viele Bierkisten kann ich auf den Fußboden eines rechteckigen Raumes stellen?") 
Meine zu optimierende Größe ist die Kistenanzahl N, die sich aus dem Produkt von "Kistenanzahl in x-Richtung n_x" und "Kistenanzahl in y-Richtung n_y" zusammensetzt. Die freien, d. h. veränderlichen Parameter sind n_x und n_y. Also soll folgende objektive Funktion maximiert werden:
N(n_x; n_y)=n_x * n_y
Dabei gelten 2 Randbedingungen: n_x*c <=a und n_y*d <=b
(Die Möglichkeit, die Kisten um 90° zu drehen sei erstmal vernachlässigt)

Der PEO-Optimierer mag aber keine ganzzahligen freien Parameter, deswegen muss ich ihm 2 reelle Zahlen n_xreal und n_yreal geben. Ich mache zwei Parameterbeziehungen, die sagen:
n_x=floor(n_xreal) und n_y=floor(n_yreal) sodass aus der objektiven Funktion wird:
N(n_xreal; n_yreal)=floor(n_xreal) + floor(n_yreal)
(ob da nun round(), floor() oder ceil() verwendet wird ist ja prinzipiell egal, Hauptsache ist, dass die Kistenanzahlen ganzzahlig sind bzw. reelle Zahlen mit Nullen hinter dem Komma, denn halbe Kisten gibts nicht).
Soweit so gut, aber der PEO variiert die freien Parameter trotz einer vorgegeben Schrittweite von 0,5 immer um sehr kleine Inkremente, sodass diese Veränderung aufgrund der Runden-Funktion in der objektiven Funktion keinen Einfluss auf das Ergebniss haben. Dadurch sind sehr viele Iterationszyklen nötig (zum Teil mehrere 100), bis sich der zu optimierende Parameter ändert.

Jetzt suche ich eine Möglichkeit, um
a) den Optimierer dazu zu zwingen, sich gefälligsten an die Schrittweite zu halten, die ich ihm vorgebe oder
b) irgendwie festzulegen, dass die freien Parameter n_xreal und n_yreal nur eine Nachkommastelle haben können.

------------------
viele Grüße
Arne

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

xam0560
Mitglied
Konstruktion / Administration


Sehen Sie sich das Profil von xam0560 an!   Senden Sie eine Private Message an xam0560  Schreiben Sie einen Gästebucheintrag für xam0560

Beiträge: 445
Registriert: 11.08.2008

@Work
Xeon W3565
24Gbyte (DDR3-2000 MHz
AMD Fire Pro V5900 (Fire GL V)
256GB SSD (Samsung SSD 830)
500GB HD502HJ 7200Umin.
Win. 7 prof. 64bit
Pro-E Wildfire 4.0
Creo
Windchill PDM-Link 10.0
ACAD 2013 + Athena Aufsatz
ACAD 2011 % 2012
Catia V5 R19 SP9
HICAD 2014 SP2
Helios 2014
Inventor 2014
Rhino 5.0
@Home
I7 920 Extreme
6 GByte (DDR3-2000 Mhz)
ATI Radeon HD 5850
2x WD 1TB
4x Seagate a 2TB
2x WD 5TB im Raid 1
1x Samsung SSD 850 Pro 500Gb

erstellt am: 26. Okt. 2012 11:47    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mellas 10 Unities + Antwort hilfreich

So.

alsoooo.

Hier die Lösung falls ich richtig liege.
Warum zum Henker benützt du PEO???
Eine einfache Formel tut es auch.
Erstell folgende Folmel:

rnd(max((b/a)*(a/c);(b/c)*(a/d)))

und das wars. Selbst die Drehung ist drin.

Ich modellier das mal schnell. Entweder stehe ich aufm Schlauch oder ich bin zu blöd dafür.

:-)

Gruß,


Maximilian

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mellas
Mitglied
Student


Sehen Sie sich das Profil von mellas an!   Senden Sie eine Private Message an mellas  Schreiben Sie einen Gästebucheintrag für mellas

Beiträge: 29
Registriert: 14.03.2012

CATIA V5R21

erstellt am: 26. Okt. 2012 12:03    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Zitat:
Original erstellt von xam0560:
So.

alsoooo.

Hier die Lösung falls ich richtig liege.
Warum zum Henker benützt du PEO???
Eine einfache Formel tut es auch.
Erstell folgende Folmel:

rnd(max((b/a)*(a/c);(b/c)*(a/d)))

und das wars. Selbst die Drehung ist drin.

Ich modellier das mal schnell. Entweder stehe ich aufm Schlauch oder ich bin zu blöd dafür.

:-)

Gruß,


Maximilian


Hallo Maximilian!
Deine Formel ist natürlich die beste Lösung, wenn es um das zuletzt beschriebene Beispiel geht.
Aber mein Problem ist etwas umfangreicher, deswegen benutze/brauche ich den PEO:
Ich unterteile eine 12-eckige Fläche (doppel-T-förmig) in 3 Rechtecke, auf die ich eine Anzahl von Kisten verteile. Jetzt sollen die Kisten so verteilt werden, dass ihr gemeinsamer Schwerpunkt möglichst nahe an einem vorgegebenen Wert liegt.
Vielen Dank für deinen simplen Lösungsvorschlag! (aber damit komme ich nicht weiter, weil mein System mehrere Freiheitsgrade/freie Parameter hat).

Konkret benötige ich einfach nur die Antwort, was ich tun muss, damit der Optimierer mit einer vorgegebenen Schrittweite arbeitet oder wie ich die Nachkommastellen einer reellen Zahl beschränke.

Das meine Beschreibung mehr Verwirrung als Erklärung bringt war mir klar, aber ich wollte Antworten wie "Beschreib dein Problem doch mal genauer, so pauschal kann man da nicht helfen, wenn man nicht weiß worum es geht" vorbeugen...

------------------
viele Grüße
Arne

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

xam0560
Mitglied
Konstruktion / Administration


Sehen Sie sich das Profil von xam0560 an!   Senden Sie eine Private Message an xam0560  Schreiben Sie einen Gästebucheintrag für xam0560

Beiträge: 445
Registriert: 11.08.2008

@Work
Xeon W3565
24Gbyte (DDR3-2000 MHz
AMD Fire Pro V5900 (Fire GL V)
256GB SSD (Samsung SSD 830)
500GB HD502HJ 7200Umin.
Win. 7 prof. 64bit
Pro-E Wildfire 4.0
Creo
Windchill PDM-Link 10.0
ACAD 2013 + Athena Aufsatz
ACAD 2011 % 2012
Catia V5 R19 SP9
HICAD 2014 SP2
Helios 2014
Inventor 2014
Rhino 5.0
@Home
I7 920 Extreme
6 GByte (DDR3-2000 Mhz)
ATI Radeon HD 5850
2x WD 1TB
4x Seagate a 2TB
2x WD 5TB im Raid 1
1x Samsung SSD 850 Pro 500Gb

erstellt am: 26. Okt. 2012 12:59    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für mellas 10 Unities + Antwort hilfreich

ohh. ^^

Dann verstehe ich dein Problem.

Ok da steigt mein Wissen aus, da ich deine Datei nicht habe und mir die randbedingungen fehlen.
Jetzt verstehe ich auch das Problem mit den Kommastellen.
Wenn du lust hast, lad das Model mal hoch, hab am Wochenende ein bisschen Time.
Würde mir das sehr gerne anschaun.

Gruß,

Maximilian

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mellas
Mitglied
Student


Sehen Sie sich das Profil von mellas an!   Senden Sie eine Private Message an mellas  Schreiben Sie einen Gästebucheintrag für mellas

Beiträge: 29
Registriert: 14.03.2012

CATIA V5R21

erstellt am: 26. Okt. 2012 13:24    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Zitat:
Original erstellt von xam0560:
ohh. ^^

Dann verstehe ich dein Problem.

Ok da steigt mein Wissen aus, da ich deine Datei nicht habe und mir die randbedingungen fehlen.
Jetzt verstehe ich auch das Problem mit den Kommastellen.
Wenn du lust hast, lad das Model mal hoch, hab am Wochenende ein bisschen Time.
Würde mir das sehr gerne anschaun.

Gruß,

Maximilian


ich mache meine Datei nochmal ein bisschen hübsch, beschreibe den Kontext und lade beides dann hoch!

edit: Hab noch einen Fehler meinem Modell gefunden, der aber nix mit dem PEO zu tun hat.
Im Grunde geht es einfach nur darum, dass ich im PEO zwar eine Schrittweite für die freien Parameter vorgeben kann, diese vom Algorithmus aber nicht verwendet wird (zumindest sieht es in der Excel-Tabelle, in der alle Iterationen aufgeführt sind so aus).

------------------
viele Grüße
Arne

[Diese Nachricht wurde von mellas am 27. Okt. 2012 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2025 CAD.de | Impressum | Datenschutz