Torna indietro   Hardware Upgrade Forum > Software > Programmazione

HUAWEI MatePad Air recensione: OLED opaco e tastiera dedicata per lavorare meglio
HUAWEI MatePad Air recensione: OLED opaco e tastiera dedicata per lavorare meglio
HUAWEI MatePad Air combina diverse carte molto interessanti: un OLED PaperMatte da 12 pollici, un corpo sottile e una tastiera molto comoda. Durante la prova abbiamo apprezzato fluidità, audio e comfort visivo, mentre i test hanno chiarito pregi e qualche limite nelle prestazioni. L'autonomia ha convinto anche nell'uso intermittente; la scelta passa dalla compatibilità delle proprie app e dal valore del pacchetto con accessori, proposto a 749 euro
NVIDIA RTX Spark: il PC Windows on ARM costruito per l'IA agentica
NVIDIA RTX Spark: il PC Windows on ARM costruito per l'IA agentica
Debuttano ufficialmente i primi sistemi notebook basati su piattaforma NVIDIA RTX Spark, abbinati a Windows on ARM e pensati per l'intelligenza artificiale agentica. Architettura integrata tra CPU e GPU che condividono la memoria di sistema, capace di gestire in locale modelli molto grandi ma al contempo anche di spiccare con la grafica e l'elaborazione
Motorola razr fold, dalla conchiglia al formato a libro. La recensione
Motorola razr fold, dalla conchiglia al formato a libro. La recensione
Abbiamo provato Motorola razr fold, il pieghevole a libro con display interno LTPO da 8,09 pollici, Snapdragon 8 Gen 5 e batteria da 6000 mAh in 243 grammi. Pennino e custodia sopno già nella confezione, per un foldable che si caratterizza per il pannello luminoso, l'autonomia ottima per la categoria e le fotocamere coerenti e ben sfruttabili. Il listino è di 1999 euro, ma in vendita si trova già a molto meno
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 01-04-2009, 15:55   #1
mamo139
Senior Member
 
L'Avatar di mamo139
 
Iscritto dal: Sep 2006
Città: Bologna/Milano
Messaggi: 525
[algoritmo] calcolare minimo di una funzione da Rn a R con un computer

sia dato il vettore x e il vettore x trasposto xt contenente n incognite x1,x2,...,xn
sia definita la matrice Y di grandezza n*n (di cui conosciamo tutti i valori)
sia e un vettore che ha tutti gli elementi di valore 1.

quale puo essere un algoritmo efficiente per il seguente problema??

min xt*Y*x
sub x*e = 1

anzi... ancor meglio mi piacerebbe sapere come risolvereste con il computer semplicemente questo problema:
min xt*Y*x
al vincolo poi ci penso io!!

grazie

ps: mi piacerebbe un modo piu sofisticato della forza bruta... io stavo pensando magari di utilizzare i differenziali, posizionarmi in un punto e scorrere "giu per le conche" () fino a raggiungere un minimo, ma magari potrei finire intrappolato in un minimo locale...
__________________
http://mamo139.altervista.org

Ultima modifica di mamo139 : 01-04-2009 alle 15:58.
mamo139 è offline   Rispondi citando il messaggio o parte di esso
Old 02-04-2009, 18:09   #2
mamo139
Senior Member
 
L'Avatar di mamo139
 
Iscritto dal: Sep 2006
Città: Bologna/Milano
Messaggi: 525
up...

ho gia predisposto il codice per moltiplicare le matrici!

Codice:
#include <stdio.h>
#include <stdlib.h>

struct matrice {
   int r;
   int c;
   long ** m;
};


struct matrice crea_matrice(int r, int c); // r = righe, c = colonne
bool moltiplica_matrici(struct matrice * c, struct matrice a, struct matrice b);

int main (){
   
    struct matrice x,y,z;
    x = crea_matrice(2,3);
    y = crea_matrice(3,2);
    z = crea_matrice(x.r,y.c);
   
    if(!moltiplica_matrici(&z,x,y))
        printf("errore...");
       
    getchar();
    return 1;
}

struct matrice crea_matrice(int r, int c){ // r = righe, c = colonne

     int x,y;
     struct matrice matrice;
     
     matrice.r = r;
     matrice.c = c;
     matrice.m = (long **) malloc(r * sizeof(long *));
     
     for(x=0;x<r;x++)
          matrice.m[x] = (long *) malloc(c * sizeof(long));
         
     for(x=0;x<r;x++)
          for(y=0;y<c;y++)   
               matrice.m[x][y] = 0;
     
     return matrice;
}

bool moltiplica_matrici(struct matrice * c, struct matrice a, struct matrice b){
     
     int x,y,i;
     
     if(a.c != b.r)
          return 0;
     if(c->r != a.r || c->c != b.c)
          return 0;
     
     for(x=0;x<c->r;x++)
          for(y=0;y<c->c;y++)
               for(i=0;i<a.c;i++)
                    c->m[x][y] = c->m[x][y] + a.m[x][i]*b.m[i][y];
     
     return 1;
}
__________________
http://mamo139.altervista.org
mamo139 è offline   Rispondi citando il messaggio o parte di esso
Old 03-04-2009, 09:43   #3
Furla
Senior Member
 
Iscritto dal: Feb 2004
Messaggi: 1454
simplesso?
comunque si risolve esattamente come si risolve a mano, devi solo procedere a piccoli passi trasformando i procedimenti "manuali" in funzioni che lavorano sulla struttura e si passano informazioni.
Furla è offline   Rispondi citando il messaggio o parte di esso
Old 03-04-2009, 10:15   #4
mamo139
Senior Member
 
L'Avatar di mamo139
 
Iscritto dal: Sep 2006
Città: Bologna/Milano
Messaggi: 525
Quote:
Originariamente inviato da Furla Guarda i messaggi
simplesso?
comunque si risolve esattamente come si risolve a mano, devi solo procedere a piccoli passi trasformando i procedimenti "manuali" in funzioni che lavorano sulla struttura e si passano informazioni.
il simplesso funziona solo con problemi lineari... quindi temo non vada bene!
__________________
http://mamo139.altervista.org
mamo139 è offline   Rispondi citando il messaggio o parte di esso
Old 03-04-2009, 12:56   #5
krogy80
Member
 
Iscritto dal: Nov 2008
Messaggi: 135
Quote:
Originariamente inviato da mamo139 Guarda i messaggi
sia dato il vettore x e il vettore x trasposto xt contenente n incognite x1,x2,...,xn
sia definita la matrice Y di grandezza n*n (di cui conosciamo tutti i valori)
sia e un vettore che ha tutti gli elementi di valore 1.

quale puo essere un algoritmo efficiente per il seguente problema??

min xt*Y*x
sub x*e = 1

anzi... ancor meglio mi piacerebbe sapere come risolvereste con il computer semplicemente questo problema:
min xt*Y*x
al vincolo poi ci penso io!!

grazie

ps: mi piacerebbe un modo piu sofisticato della forza bruta... io stavo pensando magari di utilizzare i differenziali, posizionarmi in un punto e scorrere "giu per le conche" () fino a raggiungere un minimo, ma magari potrei finire intrappolato in un minimo locale...
in questo caso dipende dalle caratteristiche di Y. se Y é semi-definita positiva, ovvero xt*Y*x>=0 per ogni x!=0, allora il problema é convesso e ogni minimo locale é anche globale, quindi puoi usare i differenziali.
i problemi non-convessi, a parte poche eccezzioni, non sono risolvibili efficacemente.
comunque ottimizzazzione é un'argomento piuttosto complesso, non posso certo tenerti una lezione via forum
se ti interessa questo libro é ottimo.

[edit] fatto due calcoli, se Y é semidefinita positiva il minimo dovrebbe essere
x_min = (invY*e) / ( et * invY * e)
dove invY é l'inversa di Y se esiste o la pseudo inversa altrimenti.

Ultima modifica di krogy80 : 03-04-2009 alle 13:06.
krogy80 è offline   Rispondi citando il messaggio o parte di esso
Old 03-04-2009, 14:59   #6
mamo139
Senior Member
 
L'Avatar di mamo139
 
Iscritto dal: Sep 2006
Città: Bologna/Milano
Messaggi: 525
Quote:
Originariamente inviato da krogy80 Guarda i messaggi
in questo caso dipende dalle caratteristiche di Y. se Y é semi-definita positiva, ovvero xt*Y*x>=0 per ogni x!=0, allora il problema é convesso e ogni minimo locale é anche globale, quindi puoi usare i differenziali.
i problemi non-convessi, a parte poche eccezzioni, non sono risolvibili efficacemente.
comunque ottimizzazzione é un'argomento piuttosto complesso, non posso certo tenerti una lezione via forum
se ti interessa questo libro é ottimo.

[edit] fatto due calcoli, se Y é semidefinita positiva il minimo dovrebbe essere
x_min = (invY*e) / ( et * invY * e)
dove invY é l'inversa di Y se esiste o la pseudo inversa altrimenti.
capito, grazie...
alla fine il metodo piu rapido e quello di calcolare il gradiente della lagrangiana del caso generico, risolverlo e poi utilizzare la soluzione nel programma
io volevo fargli fare i calcoli, però è meno efficiente!!!

cmq il tuo risultato è giustissimo, anche a me con il metodo che ho detto viene:
xt = et*invY / (et*invY*e)
__________________
http://mamo139.altervista.org
mamo139 è offline   Rispondi citando il messaggio o parte di esso
Old 03-04-2009, 15:38   #7
krogy80
Member
 
Iscritto dal: Nov 2008
Messaggi: 135
Quote:
Originariamente inviato da mamo139 Guarda i messaggi
capito, grazie...
alla fine il metodo piu rapido e quello di calcolare il gradiente della lagrangiana del caso generico, risolverlo e poi utilizzare la soluzione nel programma
io volevo fargli fare i calcoli, però è meno efficiente!!!
il tuo problema é un caso particolare in cui si riesce a ricavare la soluzione in forma chiusa. in generale peró non si puó, e bisogna utilizzare metodi iterativi.

[edit] tra l'altro la formula sopra é valida solo se Y é anche simmetrica. altrimenti basta usare al posto di invY l'inversa di Y+Yt.

Ultima modifica di krogy80 : 03-04-2009 alle 15:59.
krogy80 è offline   Rispondi citando il messaggio o parte di esso
Old 16-04-2009, 18:17   #8
mamo139
Senior Member
 
L'Avatar di mamo139
 
Iscritto dal: Sep 2006
Città: Bologna/Milano
Messaggi: 525
ok, ora vorrei utilizzare un metodo iterativo per trovare i punti stazionari (quindi non solo quelli di massimo o di minimo) di una funzione da Rn a R...

che metodi ci sono?
__________________
http://mamo139.altervista.org
mamo139 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


HUAWEI MatePad Air recensione: OLED opaco e tastiera dedicata per lavorare meglio HUAWEI MatePad Air recensione: OLED opaco e tast...
NVIDIA RTX Spark: il PC Windows on ARM costruito per l'IA agentica NVIDIA RTX Spark: il PC Windows on ARM costruito...
Motorola razr fold, dalla conchiglia al formato a libro. La recensione Motorola razr fold, dalla conchiglia al formato ...
Recensione Google Pixel Watch 5: sembra lo stesso, ma al polso la differenza si sente Recensione Google Pixel Watch 5: sembra lo stess...
Nokia Innovation Day 2026: la sovranità europea passa dal mercato unico e dai laboratori italiani del gruppo Nokia Innovation Day 2026: la sovranità e...
Ultimate Performance: il piano segreto d...
iPhone Duo senza compromessi: i benchmar...
Metallo liquido per CPU e GPU, ecco cosa...
WINDTRE rimodula ancora: la linea fissa ...
Giù di altri 100€ ECOVACS T90S PR...
Galaxy S27 Ultra con chip Exynos? Qualco...
La NASA annuncia alcuni aggiornamenti pe...
Meridian Space si separa da SpinLaunch e...
Gli astronomi hanno scoperto stelle che ...
Facebook cambia il feed: ora l'algoritmo...
I nuovi Vivo X500 potrebbero costare qua...
Due pallet di RTX 5090 spariti nel nulla...
Oral-B iO in offerta su Amazon: spazzoli...
Offerte TV su Amazon: LG OLED C6 a 1.139...
Offerte Apple su Amazon: AirPods Pro 3 a...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 07:47.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v