Megtalálása kritikus út táblázatos módszer

Hálózati grafikon - szükséges elemét egy komplex gyártási, amely több csatlakoztatva, és függ egymástól szakaszaiban. Azonosítása kritikus út és időzítésének termelési tartalékok - a fő feladatot kell megoldani az építőiparban a hálózat ütemtervet. Az ilyen problémák lehet leírni egy grafikont, és megjeleníti azt a táblázat formájában. Ahhoz, hogy megtalálja a kritikus útra (a lépések sorozata működési időtartamának meghatározásához a teljes projekt, és nem rendelkeznek rendelkezés idő) számítási módszert alkalmaznak. Az egyik ilyen módszer alkalmazható táblázatos módszer és az adatok táblázatos formában.

A probléma automatizálni a számítás a hálózat menetrend meglehetősen lényeges és fontos. Kiszámítása a kritikus út a számítógép segítségével segít többször, hogy gyorsítsák fel a folyamatot, és a nagy telek - sokszor. Ezért automatizálása a számítás a hálózat menetrend is nagy gyakorlati haszna.

Úgy véljük, a probléma bemutatott grafikonon.

A csúcsok - mérföldkövek.

Élek a grafikon - a végrehajtás a munkát. A bordák hossza jelzi a hossza a munka és az irányt, amely jelzi végrehajtási sorrend a munka.

Ez szükséges, hogy megtalálják az utat a grafikonon, ami maximális hossza az összes lehetséges út egy adott gráf.

Ezeket a feladatokat is képviselhetik táblázatos formában

Ennek megoldására is:

· A számítás a korai kezdés a munka minden típusú - minimális időszak kezdődött el, elejétől számolva a projekt.

· A számítás a korai befejezése a munka minden típusú - minimális idő a munka befejezésekor, az elejétől a projekt.

· A számítás a késői kezdés a munka minden típus - az a maximális időtartam, a munka kezdetén, kezdve az elején a projekt.

· A számítás a késői befejezése az egyes fajok - a maximális időt a munka befejezésekor, az elejétől a projekt.

· Értékelése teljes juttatás minden típusú munkát - a maximális idő, ami késleltetheti a munka.

VBA nyelven az alábbi okok miatt választották, hogy írjon a program:

1. VisualBasicforApplications lehetővé teszi a kényelmes munka a terjedelmes táblázatokat, adatokat olvas nekik, termelő felettük átalakítsa és újakat építenek.

2. A Excel VBA át hüvely lehetővé teszi a használatát ez a funkció shell megkönnyítése adatbevitel és dolgozni velük.

3. Ez a nyelv lehetővé teszi, hogy automatizálják néhány lépés az írás egy programot makrorekordera eszközökkel.

4. Nem vagyok ismerik a nyelvet, és én lennék a legkényelmesebb, hogy írjon egy program használ VBA.

5. Könnyen megtanulják a nyelvet és a rendelkezésre állás, a forráskód a program lehetővé teszi a későbbi felhasználóknak, hogy javítsa meg, vagy módosíthatja, hogy megfeleljen a követelményeknek.

1. Amikor elindítja az első adatbeviteli képernyő kéri a felhasználót, hogy adja meg a számát munkafázisokat:

A) egy csekket a megfelelő bemenet. Az összeg által kifejezett egy szám, akkor kell lennie egy egész szám (ha törtszám, a tört része csonka), és nem haladja meg a 254.

B) Ha a bemeneti feltételek fennállnak, akkor van egy csekket a rendelkezésre álló információkat egy lapon, hogy mi jelenik meg.

B) össze egy táblázatot az eredeti adatokat

2. Miután rajz tábla a felhasználónak kell kitölteni az alábbi értékekkel:

A) A megerősítés után a felhasználó által kitöltésével a táblázat:

3. A felhasználó költözik egy másik dolgozó ablakhoz, ahol megvan az a képessége, hogy aktiválja a számítás kritikus út és a hálózati grafika, átviteli egységeket időt a másikra (például nappal óra), ha a táblázatban vannak tört számok, mert az adott feladatot a héj VBA számításokat tört számok ad egy hiba.

A) Ha a felhasználó kiválasztott fordítási időt egységek, a számok a táblázatban a forrás adatok alakítjuk a kiválasztott séma.

B) Ha a felhasználó úgy döntött, hogy építeni a hálózatot ütemezés, az építési tábla, amelynek adatait az időben a korai és késői kezdés munka korai és késői befejezése a munka, valamint a tartalék idő minden szakaszában és lépések sorozata, a kritikus út.

4. Ha rákattint a számítás a hálózat menetrend, a felhasználó elindítja a keresési algoritmus a kritikus út és a hozzájuk kapcsolódó adatokat, amely a következőképpen működik:

4.1. A döntés adatokat tartalmazza a táblázat eredeti adatokat és számított a bejegyzések számát (a szám a fajta munka).

4.2. Meghatározzuk kezdetben. Ha a forrás adattábla oszlop időtartam adatok, akkor ez a lépés nem fejeződik bármilyen munkát, hogy van, ez a kezdet.

4.3. Minden a kezdeti szakaszban található az eredeti tábla ábrázolási elején a munka megkezdése értéke 0, és a korai munkájának befejezését 0 + időtartama az a fajta munka.

4.4. Minden egyes befejezett vonal ily módon meghatározott aktivitását típusú záróelem lépés, és a kijelölés tároljuk. Minden típusú munkát befejezve ezzel a lépéssel nem kimutatható egyfajta amelynek maximális értéke a korai bezárása munkaidő. Ez az érték is van. Az alábbi táblázat talált munkahelyet, kezdve a korábban megjegyzett szakaszban és az összes rekordot, amelyek megfelelnek az az állapot oszlopban a korai rajt van rögzítve a tárolt maximális értéke korai befejezése a munkaidő. Az algoritmus addig ismételjük, amíg nincs üres sor.

4.5. Az eredményeket az asztal, ahol minden típusú munka meghatározott korai kezdésének és várható befejezésének határozza meg a maximális érték a korai befejezése a munkaidő, amely a projekt időtartama.

4.6. Meghatározza a végső szakaszban. Ha a tábla bemeneti adatok karaktersorozat nem tartalmazza a hossza az adatokat, így ez a lépés nem kezdődik bármilyen munkát, hogy van, ez a vége.

4.7. Minden végső szakaszában található az eredeti tábla ábrázolási késő projekt befejezését egyenlő időtartama és időpontja késői kezdés munka, egyenlő a különbség a projekt időtartama és az időtartam a fajta munka. Számított teljes ellátás a különbség a korai és késői befejezési időpont (start) munkáját.

4.8. Minden egyes befejezett vonal így meghatározott lépése során úgy indítjuk tevékenység típus és megjelölés van tárolva. Minden típusú munka elején egy lépésben észlelt fajtája, amelynek legkisebb értéke az idő a késői kezdés. Ez az érték is van. Továbbá a fajta munkaasztal található, véget a korábban megjegyzett lépést minden nyilvántartást, amelyek kielégítik azt a feltételt az idő oszlopban van rögzítve késői befejezése a tárolt minimális értéke az idő a késői kezdés. Kiszámítja az összes tartalék. Az algoritmus addig ismételjük, amíg nincs üres sor.

4.9. Kiváló rekordot, amelynek értéke a teljes tartalék megegyezik a 0. Ezek a típusú építési munkát is tartalmaz a kritikus út.

4.10. Ahhoz, hogy megtalálja a kritikus út az első rekord találkozott a teljes tartalék nulla készítették a kezdete és befejezése formában munkát. Minden további bejegyzések hozott egyetlen jelölés befejezése pont típusú munkát. A hatékonysága ennek algoritmus biztosítja a számított szerkezet a táblázat, ahol a munkahelyek vannak elrendezve stádiumától függően azok eredetétől. Azonban, ha a felhasználó számot a lépéseket fordított sorrendben, előfordulhat, hogy bizonyos ponton találkozik a kritikus út kétszer és a másik egyszer. Erre a célra algoritmust találni az ismétlődő értékeket kritikus módon. Ha ismétlés találtak, a program épít a kritikus utat fordított sorrendben. Az utolsó rekord felmerült teljes tartalék értékeket nullának és teljes kezdő típusú munkát. Minden további bejegyzések venni csak a jelölést a kezdeti szakaszban a fajta munka.

5. A számítások eredményei jelennek meg a képernyőn. A felhasználó lefordítani időegység fordított sorrendben (p. 3).

Mi határozza meg a kritikus út bizonyítékok alapján a kapcsolatokat a munka szakaszait és a munka időtartama.

Adott egy gráf.

Adjon meg egy számot a munkaszakaszok (ebben a példában 10)

Az adatok alapján asztalok tele van a táblázatkezelő adatforrást, ahol a sor számát - a szakasz kezdetét, és az oszlop számát - színpad shutdown.

Megnyomása után az „OK” gombot a menü megnyitásához megoldások

Egy konkrét példában az idő transzfer egységeket nem szükséges, de ez lehetséges átvinni az egyértelműség kedvéért. Tegyük fel, hogy bizonyíték van az az időtartam, nap, de szükség van bemutatni őket órákban.

Művészet a számítás megkapjuk a döntő asztal:

Lehetőség van, hogy végre inverz átviteli időt egység.

Ezt a problémát úgy oldották korábban számítógép használata nélkül, és van egy megoldás:

A korai kezdés

A korai végét

Míg a késői kezdés

Idő legkésőbb a végén

Megtalálása kritikus út táblázatos módszer

elkezd képernyő jelenik meg az Excel indításakor fájlt. amelyen elhelyezett két gomb:

„Az első lépések” a gomb megnyomásával az úgynevezett kezdeti adatbeviteli képernyőn.

„Exit”, ha ezt a gombot megnyomja, az a program lezárása és az Excel.

A kezdeti adatbevitel a felhasználó beállítja a számát munkaszakaszok (száma egész számnak kell lennie a 3-tól 254)

A gombok formájában és 4 ellenőrzik

· „OK” - megalakult egy tábla kezdeti adatok és a felvétel a mód a töltés az asztalra.

· „Mégsem” - a szerszámot lezárjuk

· „Súgó” - a hívás a program segítségével

· „Skip” - az átmenetet egy oldat formájában

· „Turn utasításokat” - kiterjed a magyarázó ablakok.

A feltöltés után a táblázat a felhasználó továbblép a határozat ablakhoz

Ahol 3 gomb:

· „Meghatározása a kritikus úton” - számítása kritikus út és a kapcsolódó adatokat és megjeleníti az eredményeket a képernyőn.

· „Vissza a kezdeti adatbevitel” - kinyitja a kezdeti adatbeviteli ablak és a bemeneti lapot.

· „Transfer idő egységek” - a nyitó az átigazolási időegység, amelyben kiválasztható az aktuális időt készüléket, és nyomja meg az „OK” gombra, majd válassza ki a kívánt időegység és kattintson az „OK” gombot.

Ennek eredményeként a munka vizsgálták az algoritmus megtalálása kritikus út és táblázatba a hálózat ütemtervet. Alapján az algoritmus végre egy program, amely a grafikus felhasználói felület, az adatok táblázatos forma és táblázatos kimenete az eredményeket.

1. Belyaev SP Előadások a "Operations Research".

FormaAbout (bizonyítvány a program)

Private Sub UserForm_Terminate ()

FormaHelpForm1 (befejezéséhez nyújtott segítséget, a táblázatban)

FormaInsForm (adja meg a számot a munkafázisokat, ellenőrizze a papír méretét, beviteli ellenőrzés, segítség hívás kilép a programból, az átmenet a számított forma)

„Ellenőrzése a megfelelő bemenet

Dim Válasz As String

Ha iget.Value = „” Akkor

MsgBox "Vveditekolichestvoetapov" vbCritical + vbOKOnly "Oshibkavvoda"

Ha nem (IsNumeric (iget.Value)) Majd

MsgBox „A számos munkaművelet számnak kell lennie”, vbCritical + vbOKOnly, „Beviteli hiba”

Ha iget.Value <3 Then

MsgBox „A számos munka lépéseket kell legalább 3”, vbCritical + vbOKOnly, „Beviteli hiba”

Ha iget.Value> 254 Aztán

MsgBox „A számos munka lépéseket nem lehet több, mint 222”, vbCritical + vbOKOnly, „Beviteli hiba”

„Check for lap információ

I = 1 254

A j = 1-től 254

Ha nem ActiveSheet.Cells (i, j) Eddig = "" Akkor

Válasz = MsgBox ( "lap információkat tartalmaz! Ha folytatja, akkor meg kell semmisíteni! Continue?", VbCritical + vbOKCancel, "Figyelmeztetés")

Ha a válasz = vbCancel Aztán

Ha a válasz = vbOK Aztán

Kapcsolódó cikkek