Scipy otimize a raiz

Scipy otimize a raiz

Python é uma linguagem de computador orientada a objetos, estruturada e funcional. Sua aplicação não se limita apenas a tipos específicos, o que a torna uma linguagem de uso geral. É uma linguagem de programação bem familiar e oferece uma variedade de bibliotecas para escrever os diferentes programas de software nesse idioma. O script deste idioma também é semelhante ao idioma inglês. Em virtude desse fato, Python tem o crédito de ser uma linguagem de programação para iniciantes para aplicativos como computação científica e técnica, integração, processamento de sinais e imagens e a interpolação da biblioteca Python, que é "círculo", que lida com todos Tais funções específicas.

Scipy tem um atributo da função chamada “Otimize. raiz ()". Esta função contém os otimizadores. Os otimistas representam o conjunto dessas funções ou os procedimentos que reduzem o valor/saída final da função ou a raiz dessa função para o menor valor possível.

Procedimento:

O procedimento deste artigo segue algumas etapas importantes. Primeiro de tudo, aprenderemos sobre o “otimizar. raiz () ”função. Em seguida, saberemos que módulos do círculo são obrigados a trabalhar com esta função. Também aprenderemos sobre a sintaxe de otimizar.ROOT () Função no script python. Em seguida, faremos alguns exemplos para dar as mãos a este tópico.

Sintaxe:

A seguir, a sintaxe e o método de declaração para a chamada do otimizar.Função raiz no programa Python:

$ scipy.otimizar.root (diversão, x0, args = (), método = 'hybr', jac = nenhum, tol = nenhum, retorno de chamada = nenhum, opções = nenhuma)

A primeira função de parâmetro na lista de argumentos de entrada desta função é a "diversão". Esta é a equação ou a função na qual queremos aplicar o “otimizar. root () "função. Em seguida é "x0", que é um convidado inicial para calcular as raízes. O "Args" é o parâmetro adicional que podemos adicionar ao objetivo da função. E o "método" é um parâmetro importante que define o tipo de solucionador da função de otimizador. "Jac" significa jacobiano. Se seu valor for especificado para o valor "verdadeiro", a função retornará o valor do jacobiano com a função de objeção. Em um caso alternativo, o jacobiano é calculado numericamente e é outro parâmetro opcional. Então o "Tol" é a tolerância para a parada da função e depende do tipo de solucionador; Novamente, um parâmetro opcional.

Valor de retorno:

A função retorna o objeto de tipo de resultado otimizado na saída que possui a matriz que representa a solução. A mensagem de sucesso é uma bandeira booleana, o que significa que a função é exitada com o sucesso e a causa da mensagem de rescisão.

Exemplo 1:

O “otimizar.a função root () ”otimiza a função e reduz ou aumenta o valor conforme o requisito no programa. Ele também encontra as raízes para uma função que pode ser na forma de alguma equação não linear.

Com a sintaxe anterior que precisamos aprender, vamos fazer um exemplo muito básico para este otimizar.root () função e encontre as raízes para uma equação ou função não linear. A plataforma que usaremos para usar o compilador Python é "Google Collab". Este é um programa de código aberto e fornece todos os pacotes que já estão instalados e baixados. Para começar com o novo programa, aloque um novo notebook no Google Drive na colaboração.

Depois de criar um caderno com sucesso, vamos integrar os pacotes Python necessários no programa. Para isso, vamos integrar o círculo. Como o atributo Scipy Otimize possui o módulo "raiz", temos que importar a raiz do "centeiro.Otimizar ”. Desde que já discutimos que o otimizar.root () leva o "func" em sua lista de argumentos de entrada e a func é simplesmente uma forma da equação não linear, integramos a biblioteca "matemática" para escrever essas equações não lineares com o módulo necessário na função da função equação. A equação para a função deste exemplo é a seguinte:

a + pecado (a)

A equação dada tem a função trigonométrica que é "pecado". Nós integram a biblioteca de matemática como o "pecado". Com essa importação dos pacotes python necessários, agora definimos a equação na função. Para esta tarefa, criamos uma função com o nome "func" e o tipo de retorno "def". Passamos a variável "A" para o argumento da função. Em seguida, fazemos a função retornar a equação como “retornar x + sin (x)”.

Agora, chamamos essa função para usar esta equação no método "root ()" como seu argumento de entrada. Chame a função "root ()" e passe o nome da função para a qual definimos a equação como "func" junto com o valor inicial de adivinhação igual a "0" para as raízes. Agora, exiba os resultados com o método print (). O programa para esta função com sua saída é mostrado no seguinte snippet:

de Scipy.otimizar a raiz de importação
do pecado de importação matemática
Def func (a):
devolver um sin (a)
valor = root (func, 0)
Imprimir (valor)

A função retornou a matriz de solução como a raiz da equação. A solução convergiu.

Exemplo 2:

Com o mesmo método que aprendemos no primeiro exemplo, podemos adicionar a função "jac" com a equação e aplicar o "otimizar.ROOT () ”função nele para obter o valor mínimo para a função. Importar o “ccepy.otimizar "como" root "e o" numpy "como" np ". Declare a função “func” e retorne a equação nela como “[a [0] + 0.4*(a [0] - a [1]) ** 2 - 1.0, 0.4*(a [1] - a [0]) ** 2 + a [1]] ”. Defina outra função, "Jacobian", que é o parâmetro adicional e retorne a equação como "[[1 + 1.4*(a [0] - a [1]) ** 2, -1.4*(a [0] - a [1]) ** 2], [-1.4*(a [1] - a [0]) ** 2, 1 + 1.4*(a [1] - a [0]) ** 2]] ”. Passe o "func", o palpite inicial "x0", o "jacobiano" e o "solucionador /método" como "hybr" para a função "root ()" e execute o programa da seguinte forma:

importar numpy como np
de Scipy.otimizar a raiz de importação
Def func (a):
retornar [a [0] + 0.4*(a [0] - a [1]) ** 2 - 1.0,
0.4*(a [1] - a [0]) ** 2 + a [1]]
Def Jacobian (A):
retornar np.Array ([[1 + 1.4*(a [0] - a [1]) ** 2, -1.4*(a [0] - a [1]) ** 2], [-1.4*(a [1] - a [0]) ** 2, 1 + 1.4*(a [1] - a [0]) ** 2]])
value = root (func, [0, 0], jac = jacobiano, método = 'hybr')
Imprimir (valor)

A função retornou as raízes otimizadas como a matriz de solução com os outros dois parâmetros.

Conclusão

O trabalho e a implementação do “Scipy's Optimize.A função root () ”é mostrada neste artigo. Realizamos a função root () em dois exemplos separados e com diferentes parâmetros de função.