Home › Fóruns › Fórum Lógica Fuzzy com Python: O Guia para Iniciantes › Duvida em relação a implementação da regra 3
- Este tópico contém 2 respostas, 3 vozes e foi atualizado pela última vez 2 semanas, 1 dia atrás por
Eduardo Alexandre Franciscon.
- AutorPosts
- 18 de setembro de 2025 às 10:39 #51087
Prezado, fique com um pouco de duvida em relação ao montar a regra 3. No video a regra é SE O (A1) SERVIÇO FOR “BOM/OTIMO” E (A2) QUALIDADE DA COMIDA FOR “SABOROSA” ENTÃO (O1)GORJETA É “ALTA”.
No código é realizado a operação ativacao_regra3 = np.fmax(servico_nivel_otimo, comida_nivel_saborosa), no entanto como o Antecedente resultante de A1 E A2 fuzzy não deveria ser a operação fmin ?
ativacao_regra3 = np.fmin(servico_nivel_otimo, comida_nivel_saborosa) # ativação da regra
ativacao_gorjeta_alta = np.fmin(ativacao_regra3, y_gorjeta_alta) # corte alpha tomando o mínimo
Agradeço pela atenção desde já
22 de setembro de 2025 às 09:20 #51092Olá!
No vídeo nós acabamos usando o operador OU, então o correto é realmente usar np.fmax, pois o OU fuzzy é representado pelo máximo, enquanto o E fuzzy é representado pelo mínimo
22 de setembro de 2025 às 09:46 #51093Olá, espero encontrá-lo bem.
Vamos lá!
Na regra fuzzy “SE o serviço for ótimo E a comida for saborosa ENTÃO a gorjeta é alta”, o operador “E” é representado pelo mínimo dos graus de pertinência. Assim, se o serviço tem 0,8 e a comida 0,6, a ativação será 0,6, calculada com np.fmin. Esse valor é usado no corte alpha, que limita a saída “gorjeta alta” ao nível obtido.
Já o np.fmax aparece na fase de agregação, quando juntamos várias regras que levam à mesma saída. Nesse caso usamos o operador “OU”, que pega o máximo entre as contribuições. Portanto: dentro da regra com “E” usamos fmin, e na combinação de várias regras para o mesmo consequente usamos fmax.
Espero ter sido claro.
- AutorPosts
- Você deve fazer login para responder a este tópico.