• Moje Kódy 09.12.2008

    Metodou algoritmus větví a mezí (také volal větvení a dimenzování) je variantou Backtracking výrazně zlepšila a je většinou použita k řešení otázky nebo problémy optimalizace.

    Technika větví a mezí je obvykle vykládán jako řešení strom, kde každá větev vede k možnému řešení současné místo. Vlastnost této techniky více než ty předchozí (a které vděčí za svůj název) je algoritmus, který je odpovědný za zjištění, které odvětví řešení je již nejsou optimální pro "prořezávání" větve stromu, a ne pokračovat v plýtvání zdroje a procesy

    arbolfifo

    Problem prezentaci

    Z následující algoritmus pro řešení Mochila 0 / 1 až větvení a výchovy, jsem implementoval program v jazyce C #, která řeší tento problém pomocí následujících strategií:

    • FIFO - (First In First Out) First In - First Out
    • LIFO - (Poslední In First Out), naposledy v první ven. (PILA)
    • LC - LIFO - poslední v Array First Out. (ARRAY baterií)
    • LC - FIFO - Array First In First Out. (ARRAY lepidla)

    dibujo5

    Seznam živých uzlů (LNV) bude tvořit objekty třídy uzlu, který je definován takto:

    dibujo6

    Resolution Process

    1. Vektory jsou seřazeny podle váhy výhodu a poměr B / S.
    2. Jakmile je tento kořen je vygenerován a přidán do seznamu uzlů naživu.
    3. V tomto okamžiku vstupuje do vedení, které se opakuje, dokud LNV je prázdný následující:
    4. Je-li uzel vytěžené slibuje, že nejlepším zájmu, které jsme studovali, tak daleko (první prořezávání) žánr své děti na uzlu y.
    5. Pro každé dítě, pokud váha obsahuje, je> než maximální přípustná hmotnost nezkoušejte (I nedělat nic), že pro třídu I konstruktoru inicializován uzly a výšky na hodnoty velmi malém množství.
    6. V opačném případě léčby a pohlaví uzlu odhady způsobem.
    7. Pak kontroluje, zda je současná situace je řešení, a pokud ano, aktualizace řešení uzlu.
    8. Není-li řešení, jestli je horní hranice uzlu, že máme co do činění s větší nebo roven C, že jsme (prořezávání 2), který zní LNV v opačném případě.

    Cíl:

    Cílem je dosáhnout optimální řešení pro problém batohu s různými strategiemi a porovnat počty uzlů vytvořených v každém vidět, která je účinnější v případě vazby.

    Navrhované řešení

    Tento projekt obsahuje kód, který řeší problém 4 strategií uvedených výše. Mám také zprávu s vysvětlením v detailu, a srovnání se stopami Každá z těchto strategií, kde uvidíme počet prořezávají uzlů a počet generovaných uzlů, umožňuje srovnání.

    descargar222111

    Příspěvky týkající se Miniatury
    Sdílet tento článek:
    • Digg
    • Sphinn
    • del.icio.us
    • Facebook
    • Mixx
    • Google Bookmarks
    • BarraPunto
    • Meneame
    • Bitacoras.com
    • Technorati
    • Blogosphere News
    • Live
    • Yahoo! Bookmarks

    Úterý 9 prosinec 2008

  • 2 Citlivost

    WP_Modern_Notepad
    • Alatriste-31 říká:

      Jaaaaaaaa!
      Oyster! Myslel, že to ořezávání stromů. (Myslel jsem, že Weeb plnější ... s prořezávání a všechno!)
      Že zapomnění!
      Tuto pravdu ... nechápu.
      Mi mi jde o hardwarové řešení problémů, "sítí" a vytvoří mi Windows s "Nlite" a "WPI" a pár dalších věcí.
      Salu2!

    • sercastro říká:

      Jajajja, v tomto případě v sekci mého kódu C #, abych vám představil můj osobní řešení klasických problémů, které vznikají v průběhu kariéry a výpočetní techniky

    Zanechat komentář

    Upozornění: moderování komentářů je povoleno a může odložit svůj komentář. Není potřeba znovu svůj komentář.

Překladatel

Naši návštěvníci

  • Dosud žádné údaje!

Návštěvníci

    bez přepážek

Společenství


Reklama


**************************************** ******** Page Rank **************************************-->