1
resposta

[Projeto] Utilizando cadeias de Markov

Para implementar um modelo de previsão do clima utilizando uma cadeia de Markov em Python, podemos criar uma matriz de transição e simular a previsão do clima para uma sequência de dias.

  1. Definição dos Estados

Os estados climáticos que vamos considerar são:

  • Ensolarado
  • Nublado
  • Chuvoso

Matriz de Transição

Vamos definir uma matriz de transição que representa as probabilidades de passar de um estado para outro em um único dia:

Matriz de Transição: Ensolarado Nublado Chuvoso Ensolarado 0.8 0.1 0.1 Nublado 0.3 0.4 0.3 Chuvoso 0.2 0.5 0.3

Implementação em Python

Implementar em Python utilizando a biblioteca numpy:

import numpy as np

Definindo os estados estados = ["Ensolarado", "Nublado", "Chuvoso"]

Definindo a matriz de transição matriz_transicao = np.array([[0.8, 0.1, 0.1], # De Ensolarado [0.3, 0.4, 0.3], # De Nublado [0.2, 0.5, 0.3]]) # De Chuvoso

Função para prever o clima def prever_clima(estados, matriz_transicao, estado_inicial, dias): # Encontrar o índice do estado inicial estado_atual = estados.index(estado_inicial) previsao = [estado_inicial]

for _ in range(dias):
    # Gerar um número aleatório para decidir o próximo estado
    estado_atual = np.random.choice(estados, p=matriz_transicao[estado_atual])
    previsao.append(estado_atual)

return previsao

#Exemplo de uso estado_inicial = "Ensolarado" dias = 7 previsao_clima = prever_clima(estados, matriz_transicao, estado_inicial, dias)

#Exibir a previsão print("Previsão do clima para os próximos dias:") for dia, clima in enumerate(previsao_clima): print(f"Dia {dia}: {clima}")



1 resposta

Olá, Carlos, como vai?

Seu código está correto e implementa de forma muito clara o conceito de cadeias de Markov para a previsão do clima. A estrutura que você utilizou, definindo os estados e a matriz de transição, e a função prever_clima para simular a sequência, demonstra um bom entendimento do conteúdo.

Continue compartilhando seus projetos conosco, o fórum está sempre à disposição para ajudar no seu desenvolvimento.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!