Oi, Raul! Tudo bem?
Você trouxe uma reflexão super válida. De fato, o curso usa Python para aplicar os conceitos, mas não é necessário dominar a linguagem agora para acompanhar. O foco é entender como funcionam as Cadeias de Markov, as probabilidades e os conceitos de raciocínio em ambientes incertos.
Você está no caminho certo usando o Google Colab, ele é uma ótima opção, porque permite testar e rodar códigos direto no navegador, sem instalar nada.
Foque em entender os conceitos e, se quiser se sentir mais confortável, recomendo um curso introdutório de Python que pode te ajudar bastante: Python: crie a sua primeira aplicação, que faz parte da formação Aprenda a programar em Python com Orientação a Objetos.
E um ponto importante: você pode consultar os gabaritos na aba "Opinião do instrutor" dentro da atividade. E claro, se ficar com dúvidas, pode sempre contar com o apoio da equipe aqui no Fórum.
Para essa atividade, veja este exemplo de como você pode aplicar uma Cadeia de Markov no Python, direto no Colab:
import numpy as np
# **Definicao** dos estados do clima
states = ["Ensolarado", "Nublado", "Chuvoso"]
# **Matriz** de transicao dos estados
transition_matrix = [
[0.8, 0.15, 0.05], # de Ensolarado
[0.2, 0.6, 0.2], # de Nublado
[0.25, 0.25, 0.5] # de Chuvoso
]
# **Estado** inicial
initial_state = "Ensolarado"
# **Numero** de dias para prever
num_days = 10
# **Funcao** para obter o indice do estado
def get_state_index(state):
return states.index(state)
# **Funcao** para prever o clima
def predict_weather(initial_state, num_days):
current_state = initial_state
forecast = [current_state]
for _ in range(num_days - 1):
current_index = get_state_index(current_state)
next_state = np.random.choice(
states,
p=transition_matrix[current_index]
)
forecast.append(next_state)
current_state = next_state
return forecast
# **Executando** a previsao
forecast = predict_weather(initial_state, num_days)
# **Exibindo** a previsao
print(f"Estado inicial: {initial_state}")
print("Previsao para os proximos dias:")
for day, state in enumerate(forecast, start=1):
print(f"Dia {day}: {state}")
Esse código simula uma previsão do tempo usando uma cadeia de Markov. Você define os estados (Ensolarado, Nublado e Chuvoso), cria a matriz de transição com as probabilidades de cada mudança e, a partir disso, prevê os próximos dias.
Espero ter ajudado. Conte com o apoio do Fórum na sua jornada. Fico à disposição.
Abraços e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado