Matematické Fórum

Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.

Nástěnka
22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.

Nejste přihlášen(a). Přihlásit

#1 01. 04. 2011 09:29 — Editoval jo74 (01. 04. 2011 09:39)

jo74
Zelenáč
Příspěvky: 2
Reputace:   
 

Pridelenie ludi na pracoviska

Ahoj.
Neviem, ci to patri do diskr. mat.
Majme n pracovisk a m ludi. Kazdy z ludi moze byt prideleny na 0 az n pracovisk, na kazde pracovisko moze byt pridelenych 0 az m ludi (toto je zname). Pre kazde pracoviko je definovane minimum a maximum ludi, ktori na neho mozu byt prideleni (ak maximum nie je definovane, mozu byt na pracovisko teoreticky prideleni vsetci ludia). Existuje nejaky rozumny algoritmus, ktory rozdeli ludi na pracoviska, ale tak, aby bol rozdeleny maximalny mozny pocet ludi ?

Mam nejasne tusenie, ze by sa to mohlo dat transformovat na ulohu z teorie grafov.

Offline

 

#2 01. 04. 2011 09:49 — Editoval FailED (01. 04. 2011 09:51)

FailED
Příspěvky: 1255
Reputace:   42 
 

Re: Pridelenie ludi na pracoviska

A každý člověk má předem určeno na které(á) pracoviště může být přidělen?

Tak, jak to píšeš stačí každého na každé pracoviště přidělit minimum a potom zbylými lidmi doplňovat pracoviště na maximum.

Offline

 

#3 01. 04. 2011 10:09 — Editoval jo74 (01. 04. 2011 10:12)

jo74
Zelenáč
Příspěvky: 2
Reputace:   
 

Re: Pridelenie ludi na pracoviska

↑ FailED:
Kazdy clovek ma urcene, na ktore pracoviska moze byt prideleny.
Problem nie je najst algoritmus, ktory prideli ludi na pracoviska v sulade s min a max hodnotami, problemom je rozdelit maximalny mozny pocet ludi (a ako vobec zistit tento max. mozny pocet).

Priklad:
Majme ludi A, B, C, D a pracoviska P1 a P2. Pre P1 je min=1, max=1; pre P2 je min=2.
A moze byt prideleny na P1 aj P2, B na P1 , C na P1 a P2 a D na P1 a P2.

Mozne riesenie je: A na P1, C,D na P2 (B je neprideleny, nema byt kde, lebo A mu obsadil P1) - spolu 3
alebo A,C,D na P2, B na P1 - spolu 4

Samozrejme tento priklad ma malo moznych kombinacii, realne je pocet pracovisk okolo 10, pocet ludi okolo 30 a vtedy uz kontrolovat vsetky mozne kombinacie je nerealne.

Offline

 

#4 05. 04. 2011 00:12

anes
Příspěvky: 146
Reputace:   14 
 

Re: Pridelenie ludi na pracoviska

Nevím, jestli pomůžu, ale šlo by na to koukat, jako že hledáme nějaký vektor řešení X (pro pohodlnost asi bude lepší považovat za matici ř. m x n), kde X[i,j] je 1, pokud itého člověka zaměstnám na j-tém místě, jinak 0. Další podmínky snadno zapíšeme soustavou rovnic a nerovnic a máme normální (celočíselnou) úlohu lineárního programování, kterou půjde nakrmit počítač, maximalizujeme fci (suma přes i,j)X[i,j]

Uznávám, že to je dost ošklivé a asi děsně neefektivní (nechce se mi teď přemýšlet o složitosti, ale moc bych tomu nefandil ani proti klasickému bactrackingu), ale jde to nabouchat do počítače a třeba to nějak pomůže (možná někoho při této formulaci snáz napadne, jak to zjednodušit).

Na první  pohled lze úlohu malinko zjednodušit, ale to je ti asi jasné
- na 'neomezena' (tj vice nabidek nez uchazecu) pracoviste nacpu, koho muzu
- zaměstnám zoufalce s jedinou možností
- po opakovani zbyde to zajímavé - lidi a místa z více možnostmi. Tak nějak intuitivně bych asi koukal u každého místa na poměry potřebuji nacpat/dostupných a můžu nacpat/dostupných a vybíral lidi, kteří se mi někam hodí a jinde je oželím. S trochou přemýšlení se možná najde něco, co zas úlohu zjednoduší.

Offline

 

#5 31. 10. 2011 14:19 Příspěvek uživatele Real Estate Coaching byl skryt uživatelem Pavel Brožek. Důvod: Spam

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson