IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Algorithmes et structures de données Discussion :

Simplification d'équation logique


Sujet :

Algorithmes et structures de données

  1. #1
    Inactif  
    Homme Profil pro
    extrazlove
    Inscrit en
    Juillet 2015
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : extrazlove

    Informations forums :
    Inscription : Juillet 2015
    Messages : 103
    Points : 0
    Points
    0
    Par défaut Simplification d'équation logique
    Bonjour,

    j'ai des équations de ce type

    (M04+M129+ M14 +M20 +M22 +M31+M32+ M34+M35+ M39 +M43 +M68 +M73 +M78+M79+M80+M82+M83 +M92+M94+M95+S01)/ ( M04+M129+ M15 +M20 +M22 +M31+M32+ M34+M35+ M39 +M44 +M68 +M73 +M78+M79+M80+M82+M85 +M92+M94+M95+S01)/ ( M05+M129+ M15 +M20 +M37 +M35+M32+ M34+M35+ M39 +M44 +M68 +M73 +M78+M79+M80+M82+M85 +M92+M94+M95+S01)/....

    avec + c'est and logique et / c'est ou.

    et je veux réduire l'équation en équation plus simple.




    Merci pour vos réponse.

  2. #2
    Inactif  
    Homme Profil pro
    extrazlove
    Inscrit en
    Juillet 2015
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : extrazlove

    Informations forums :
    Inscription : Juillet 2015
    Messages : 103
    Points : 0
    Points
    0
    Par défaut
    j'ai trouvé les termes qui se repete je dois les elimné je tombe sur une équation pas trops compliqué .
    y a t'il un algorithme qui peux faire ca ou logiciel gratuit?

  3. #3
    Rédacteur/Modérateur

    Avatar de yahiko
    Homme Profil pro
    Développeur
    Inscrit en
    Juillet 2013
    Messages
    1 423
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Juillet 2013
    Messages : 1 423
    Points : 8 700
    Points
    8 700
    Billets dans le blog
    43
    Par défaut
    Je t'invite à consulter la page Wikipédia de la Table de Karnaugh qui est une technique simple (mais avec des limites) de simplification de fonctions booléennes.
    Tutoriels et FAQ TypeScript

  4. #4
    Inactif  
    Homme Profil pro
    extrazlove
    Inscrit en
    Juillet 2015
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : extrazlove

    Informations forums :
    Inscription : Juillet 2015
    Messages : 103
    Points : 0
    Points
    0
    Par défaut
    Merci pour ta réponse.

    A la base j'ai la table de Table de Karnaugh de la ligne (M04+M129+ M14 +M20 +M22 +M31+M32+ M34+M35+ M39 +M43 +M68 +M73 +M78+M79+M80+M82+M83 +M92+M94+M95+S01)
    puis la ligne ( M04+M129+ M15 +M20 +M22 +M31+M32+ M34+M35+ M39 +M44 +M68 +M73 +M78+M79+M80+M82+M85 +M92+M94+M95+S01 ainsi de suite.
    et je veux générer la fonction logique raccourci de OU / entre des lignes particulieres.

    En fait ses options je dois les rentrer dans un logciel CAO et si j'entre tous se code ca marche mais sa rend le plan un peux ilisible c'est pour ca je cherche un raccourci a cette équation.

  5. #5
    Modérateur

    Homme Profil pro
    Ingénieur électricien
    Inscrit en
    Septembre 2008
    Messages
    1 267
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur électricien

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 267
    Points : 4 829
    Points
    4 829
    Par défaut
    Citation Envoyé par fanmanga Voir le message
    avec + c'est and logique et / c'est ou.
    Alors même qu'il existe une notation standardisée:
    Et, And: & ou le point de multiplication
    Ou, Or: +
    Non, Not: La barre de surlignement ou /

    Là en faisant l'inverse c'est le coup à embrouiller tout le monde.

    Outre la table de Karnaugh que l'on étend facilement à 6 variables en 3D, il y a les propriétés des opérateurs telle que décrit dans le paragraphe "Propriétés" de la page Wikipédia sur l'Algèbre de Bool. Toutes les méthodes même la table de Karnaugh se basent sur ces propriétés. Et pour les détails voir cette page: Algèbre de Boole (structure)

    Delias

  6. #6
    Inactif  
    Homme Profil pro
    extrazlove
    Inscrit en
    Juillet 2015
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : extrazlove

    Informations forums :
    Inscription : Juillet 2015
    Messages : 103
    Points : 0
    Points
    0
    Par défaut
    Merci ton premier lien ne marche pas,ton deuxieme lien est intéressant.

    En faite mon souci est que je ne peux pas dépasser 200 caractere sous ce logiciel pour entrer la fonction logique pour résoudre un probléme de produit.

    c'est pour ca je cherche une méthode qui me donne une fonction qui dépasse pas 200 caractere pour que ca marche.

  7. #7
    Modérateur

    Homme Profil pro
    Ingénieur électricien
    Inscrit en
    Septembre 2008
    Messages
    1 267
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur électricien

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 267
    Points : 4 829
    Points
    4 829
    Par défaut
    Le lien est corrigé

    Il n'y a pas de méthode générale, c'est comme la décomposition en polynôme des équations mathématiques.
    La technique bourrin, c'est d'écrire la formule en tant que somme de produit (somme = ou, produit = et) par exemple de la forme ABCD + /A/B/C/D + ABC/D + AB/CD, cela est toujours possible, puis d'appliquer les simplifications de base comme AB+A/B = A.
    On tombera finalement sur la somme de produit la plus compacte qui est généralement utilisé en électronique (car implémentable sous la forme d'une double matrice de diode). C'est la base des PAL.

    Après on peut réduire la longueur de l'expression en simplifiant de la sorte: ABC+ABD = AB(C+D) qui bien que plus court en écriture est plus complexe à implémenter en électronique, car nécessitant un niveau de plus.

    Delias

  8. #8
    Inactif  
    Homme Profil pro
    extrazlove
    Inscrit en
    Juillet 2015
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : extrazlove

    Informations forums :
    Inscription : Juillet 2015
    Messages : 103
    Points : 0
    Points
    0
    Par défaut
    je dois faire cette simplification par macro .

    Alors je cherche la méthode la plus facile pour faire la simplification seule contrainte il ne faut pas dépassé 200 caractere.

  9. #9
    Modérateur

    Homme Profil pro
    Ingénieur électricien
    Inscrit en
    Septembre 2008
    Messages
    1 267
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur électricien

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 267
    Points : 4 829
    Points
    4 829
    Par défaut
    Ben il faut utiliser ma méthode bourrin, qui n'est rien d'autre que la résolution mathématique de la table de Karnaugh à taille infinie, alors que graphiquement c'est 4 ou 6 variables max, Je ne m'en rappelais plus...

    Et j'ai oublié deux détails:
    - Il faut partir de la version maximale de la sommes des produits, chaque produit doit contenir l'ensemble des variables: ABC/D + ABCD + AB/CD + /A/B/C/D.
    - A chaque étape on repère toutes les paires dont une seule variable change: ABC/D et ABCD qui donnent ABC de même que ABCD et AB/CD qui donnent ABD, on peut utiliser le même produit plusieurs fois (ici ABCD)
    - Les termes non utilisé, reste dans l'équation finale, les autres partent au tour suivant: ABD et ABC au tour suivant et /A/B/C/D qui reste.

    Ce petit exemple se termine ici car ABC et ABD ne sont pas simplifiable, l'équation finale est ABC+ABD+/A/B/C/D.
    Après il reste possible de chercher les sommes ici: AB(C+D) + /A/B/C/D

    Delias

  10. #10
    Inactif  
    Homme Profil pro
    extrazlove
    Inscrit en
    Juillet 2015
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : extrazlove

    Informations forums :
    Inscription : Juillet 2015
    Messages : 103
    Points : 0
    Points
    0
    Par défaut
    j'ai déja la table de Karnaugh mais les variables ne sont pas infini le nombre de variable varie je crois qui ne dépassent pas 200 variable de M01 a M150 et de S01 jusqu'a S10.
    et la forme que je dois simplifier est une forme particulier .

    Si mon produit 1 a l'option (M03+M06+M129+M18+M21+M22+M25+M30+M32+M34+M35+M36+M39+M43+M62+M68 +M73+M78+M79+M80+M82+M87+M95+S01)
    puis produit 2 un peu pariel ainsi de suite.

    je dois simplifie la fonction sous forme particuliers

    f=option produit 1/option produit 2.../option produit n avec / c'est ou logique.
    Il faut que f depasse pas 200 caracetre.

  11. #11
    Modérateur

    Homme Profil pro
    Ingénieur électricien
    Inscrit en
    Septembre 2008
    Messages
    1 267
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur électricien

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 267
    Points : 4 829
    Points
    4 829
    Par défaut
    à taille infinie -> sans limite de taille (tant que l'on a assez de mémoire)

    Ne pas partir des produits complets entraine une plus grande difficulté. Par exemple dans mon précédent exemple:
    Si j'ai ABC + AB/CD quel est l’identité qui donne ABC+ABD
    A + /AB = A+B


    Alors oui c'est possible, mais il faut intégrer beaucoup plus d'identités à la reconnaissance et travailler entre différent niveaux, Les identités sont sur les pages de Wikipedia.

    Delias

  12. #12
    Inactif  
    Homme Profil pro
    extrazlove
    Inscrit en
    Juillet 2015
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : extrazlove

    Informations forums :
    Inscription : Juillet 2015
    Messages : 103
    Points : 0
    Points
    0
    Par défaut
    Y a t'il un logiciel gratuit qui fait ca a noter que je peux avoir max 200 variable(M0...M120 S01..S10).

    J'ai deux équation de ce type a simplifier.

    U1=(M0+...M120)+S01+..S10 (ou il y a des valeur Nul) extrais d'une table de verité.
    U2=(M0+...M120)+S01+..S10 (ou il y a des valeur Nul) extrais d'une table de verité.
    ..
    Un=(M0+...M120)+S01+..S10 (ou il y a des valeur Nul) extrais d'une table de verité.
    avec U1 U2...Un tous différente je peux pas avoir un U1 et Up identique.

    Je cherche a réduire par exemple.

    f=U1/U10/U19/U37
    puis
    g=(option+!U1)/(option+!U10)/(option+!U19)/(option+!U37) avec Option égal par exemple M0+M2.

    Avec / c'est ou logique, le + c'est et, et ! c'est le sauf.

    Comment je peux faire pour trouver f et g depuis mon table de verité de U1...Un?

  13. #13
    Inactif  
    Homme Profil pro
    extrazlove
    Inscrit en
    Juillet 2015
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : extrazlove

    Informations forums :
    Inscription : Juillet 2015
    Messages : 103
    Points : 0
    Points
    0
    Par défaut
    J'ai trouvé une méthode simple a partir de table de vérité sans utiliser les identités pour réduire f mais je bloque sur g.

Discussions similaires

  1. Simuler des équations logiques
    Par Rodrigue dans le forum C#
    Réponses: 6
    Dernier message: 19/02/2010, 17h43
  2. simplification d'equation logique
    Par dionisos56 dans le forum Bibliothèques
    Réponses: 1
    Dernier message: 24/01/2008, 19h02
  3. Simplification d'équation linéaire algébrique
    Par Shivaneth dans le forum C
    Réponses: 6
    Dernier message: 09/01/2008, 00h50
  4. Simplification de fonction logique - le famous tableau karnaugh
    Par tariq_qui dans le forum VB 6 et antérieur
    Réponses: 20
    Dernier message: 29/04/2007, 13h31
  5. simplification d'équation logique
    Par ptipoutche dans le forum Algorithmes et structures de données
    Réponses: 1
    Dernier message: 11/10/2006, 14h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo