• Aucun résultat trouvé

Flowshop hybride avec machines à traitement par batch et compatibilité entre les tâches

N/A
N/A
Protected

Academic year: 2021

Partager "Flowshop hybride avec machines à traitement par batch et compatibilité entre les tâches"

Copied!
16
0
0

Texte intégral

(1)

HAL Id: inria-00175224

https://hal.inria.fr/inria-00175224

Submitted on 27 Sep 2007

HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci- entific research documents, whether they are pub- lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

Flowshop hybride avec machines à traitement par batch et compatibilité entre les tâches

Adrien Bellanger, Ammar Oulamara

To cite this version:

Adrien Bellanger, Ammar Oulamara. Flowshop hybride avec machines à traitement par batch et compatibilité entre les tâches. FRANCORO V / ROADEF 2007 - 5èmes Journées Francophones de Recherche Opérationnelle (FRANCORO) / 8ème Congrès de la société Française de Recherche Opérationnelle et d’Aide à la Décision, Laboratoire G-SCOP, Feb 2007, Grenoble, France. pp.21-35.

�inria-00175224�

(2)

ompatibilité entre les hes

Bellanger,A.et Oulamara,A.

MACSIProjetLORIA-INRIALorraine,EoledesMinesdeNany,PardeSaurupt,54042,Nany

adrien.bellangerwanadoo.fr;ammar.oulamaraloria.fr

Résumé Dans e papier nousétudions le problème d'ordonnanement dansun owshop

hybrideàdeuxétages.Lesm1 mahinesdupremierétagesontdesmahinesparallèleslas-

siques,etlesm2mahinesduseondétagesontdesmahinesàtraitementparbath.Chaque

tâhedoitêtreexéutéesurlesdeuxétages,maisilestnéessairequelestâhesd'unmême

bath,s'exéutantsimultanémentsurlamêmemahineduseondétage,soientompatibles

entreelles.Cesrelationsdeompatibilitésontdéniesparungraphed'intervalle.Nousnous

intéressonsiiàlaminimisationdeladuréetotaledel'ordonnanement.Nousproposonsdes

heuristiquesaveperformanesgaranties,ensuitedesrésultatsexpérimentaux,baséssurdes

instanesgénéréesaléatoirement,permettentd'exhiberl'eaitédeesheuristiques,.

Mots-Clefs. Flowshophybride;Bath;Heuristique

1 Introdution

Leproblèmequenousallonsaborderdansepapierestinspirédel'industriedepneumatiques.

Nous allonsommener par présenter laproblématiqueindustrielle, avant dedénir leproblème

simpliéutilisédansdee papier,ennnousabordonsl'étatdel'art.

1.1 Problème industriel

Lafabriation d'unpneunéessiteplusieursétapes,haqueétapeduproessus defabriation

requérantunegrandepréision,et d'importantsontrles.Lapremièreétapeestlafabriationde

la gomme.Elle onsisteàmélanger lesmatièrespremières(aouthousnaturelsousynthétiques

etautresadditifs),etajouterdusoureanderendrelagommevulanisableenndefabriation.

Lorsque la gomme refroidie est déoupée, la deuxième phase onsiste à fabriquer les diérentes

ouhesquiomposentlepneu;enfontiondesas,il estpossibled'ajouterdesls d'aieretdes

toiles. Ensuite, une opérationd'assemblage desdiérentsélémentsdu pneu permet d'obtenir un

pneuvert(avantvulanisation).Finalementlepneuvertestuitdansdespressesdevulanisation.

Ces pressespeuventontenirdeuxpneus,quipeuventêtredetypesdiérents,maisleurtempsde

uissonest identique.En eet,lorsque lemouled'une presseest fermé,et lauissonommenée,

nous ne pouvons pas l'ouvrir avant la n de la uisson. A haque type de pneu est assoié un

intervallededurée de uissonqu'ilfaut impérativement respeter(l'intervalleest donné parune

durée minimale, et une duréemaximale qui n'est autre que la duréeminimale plus 4% de ette

durée).Lagure1représentelesdeuxdernièresétapesdusystèmedeprodution,elles quenous

allonsreprésenterdansleproblèmesimplier.

1.2 Problème simplié

Dansette setionnous allonsprésenter leproblème simpliéque nousétudions parlasuite.

C'est un problème d'ordonnanement de typeowshophybride àdeux étages.Le premier étage

(assemblage) est omposé de

m

1 mahines lassiques parallèles. Le seond étage (uisson) est omposéde

m

2 mahines parallèles, haque mahine est une mahine àtraitement parbath qui alaapaité detraiterplusieurstâhesàlafois. Nousdevonsexéuter

n

tâhessur lesdeux

étages, haquetâheestexéutée surl'une des

m

1 mahinesdupremier étage,puissurl'une des

m

2mahinesduseondétage. Chaquetâhe,

j

,possèdeune duréed'exéution

p

1j surlepremier

étage,et unintervallededuréeopératoire

[a

j

; b

j

]

,surleseondétage.

(3)

Surlepremierétage,unemahinen'exéutequ'unetâheàlafois.Latâhe

j

n'estexéutéeque

suruneseulemahineetsansinterruption.Lorsquesontraitementestterminéeaupremierétage,

elleest exéutée dansun bathsur l'unedesmahines dudeuxième étage.Au seond étage, une

mahineàtraitementparbathexéutejusqu'à

k

tâhessimultanément,dansunbath.Pournotre problème,latâhe

j

peutêtreexéutée,auseondétage,dansunbathdontladuréed'exéution

estompriseentre

a

j et

b

j,pointinitialetterminaldesonintervallededuréeopératoireauseond

étage. Ainsil'intersetiondesintervallesdeduréesopératoiresdestâhesd'unmême bath

B

,ne

doitpasêtrevide.Laduréed'exéutiond'unbath

B

estnotée

p

2B,ave

p

2B

= max

j∈B

a

j.Nous

herhonsàminimiserladatedendel'ordonnanement(makespan).

Pourunordonnanementdonné,ladatedendelatâhe

j

,

j = 1, ..., n

estnotée

C

j.Silatâhe

j

appartientau bath

B

duseond étage, alors

C

j

= C

2

(B)

C

2

(B)

désigneladate àlaquelle

le bath

B

setermine. Notre objetif est de trouver un ordonnanement telque sa date de n (makespan)

C

max

= max{C

j

|j = 1, ..., n}

soitminimale.Dansepapier,nousutilisonslanotation

standard pourun ordonnanement, introduite par Graham et al. [4℄, 'est àdire

F HB

m1,m2

= F 2(m

1

, m

2

)|p

_

batch(II ), G

p

= IN T, k < n|C

max,

p

_

batch(II)

signiequeleseond étageest

omposé de bathing mahines en parallèle,

G

p

= IN T

spéie que le graphe de ompatibilité entrelestâhesestungraphed'intervallequionernelesduréesd'exéutionsdestâhes,et

k < n

signiequelaapaitédesmahinesàtraitementparbath estunedonnéeduproblème.

1.3 Etat de l'art

Dans la littérature, de nombreuses reherhes traitent des problèmes d'ordonnanement sur

mahines à traitement par bath, sans ompatibilité entre les tâhes et pour diverses fontions

objetifs.Brukeretal.[2℄,PottsetVanWassenhove[11℄, PottsetKovalyov[10℄ontpubliél'état

de l'artdesproblèmesd'ordonnanementdemahines àtraitementparbath. L'artilede Finke

et al.[3℄traite,quantàlui,leproblèmed'ordonnanementd'unemahineàtraitementparbath

aveompatibilitéentre lestâhes,dansleasdegraphesgénérauxetpartiuliers.

Quant aux owshops hybrides lassiques, la thèse d'Anthony Vignier [13℄ établit un état de

l'art, dans lequel sont présentés diérents algorithmes. Lesartiles de Lee et Vairaktarakis [12℄,

Guinet et al. [6℄, Allaoui et Artiba[1℄, Haouari et M'Hallah [7℄, présentent d'autres algorithmes

utilisés pourlarésolutionduproblèmede owshophybride. Leowshophybrideave traitement

parbathesestpeuétudiédanslalittérature,toutefoisquelquesartilestraitentdeaspartiuliers

deeproblème,parexempleeluideShanlingLi[14℄fournitdesheuristiquespourlaminimisation

dumakespandansunowshophybrideàdeuxétages.Dansetartilelepremierétageestomposé

d'unemahine,alorsqueleseondétageestomposédemahinesparallèlesàtraitementparbath,

ave d'importants tempsde setup lorsqueles tâhes nesontpas ompatibles,et unfaible temps

de setuplorsque lestâhes formentunbath.L'artile deNarashiram et Mangiameli[15℄ fournit

(4)

qu'unemahine àtraitementparbathesduseondétagen'eetuequ'untypedebathes.

Mêmesilesproblèmesdeowshopshybridesetdemahines parallèlesàtraitementparbath

ontété l'objet dereherhesséparées, laombinaison de es deuxtypes deproblèmes a,ànotre

onnaissane,peuétéétudiée préédemment.

Ce papierest organiséommesuit. Lasetion 2introduit d'autresnotationsutiliséesdans e

papier. La setion 3 aborde le problème général, pour lequel nous fournissons quelques bornes

inférieures, des heuristiques ave garanties de performane. La setion 4 traite quant à elle le

as partiulier ave une seule mahine auseond étage, alorsque la setion 5aborde elui il

n'y aqu'uneseule mahine au premierétage. La setion 6illustre lesdiérentes heuristiquesen

présentantdesrésultatsexpérimentaux.Lasetion7onluquantàelleepapier.

2 Notations

Pourompléterlesnotationsinlusesdanslasetionpréédentenousallonségalementutiliser:

m = max(m

1

; m

2

)

.

P

h(l) :lasommedes

h

pluspetites duréesd'exéution del'étage

l

(

l = 1, 2

);pourleseond

étagenousprendronsommeduréed'exéutiond'unetâhe

j

,lepointinitialdesonintervalle

deduréeopératoire,'estàdire

a

j.

FAM:LarègleFAM(First-Available-Mahine)est utiliséepourplaerunetâhelorsqu'ily

aplusieursmahines,elleonsisteàplaerhaquetâhed'unelistesurlapremièremahine

libre.

FBCLPT :Larègle FBCLPT (Full-Bath-Compatible-Longest-Proessing-Time)onsiste à

trier lestâhespardurées d'exéution (pointinitial de l'intervallededurée opératoire)dé-

roissantes.Ensuite réerunbath videet ajouteràebathlapremièretâhe

j

delaliste,

puisajouterles

k−1

premièrestâhesompatiblesavelatâhe

j

.Retirerdelalistelestâhes

plaées.Réitéreretteréationdebath tantqu'ilrestedestâhesdanslaliste.Cetterègle

donneunordonnanementoptimalpourleproblèmedeminimisationdumakespannotéeii

C

max

(B)

pourleproblèmeaveunemahineàtraitementparbathes,etompatibilitéentre lestâhes(

B|G

p

= IN T, k < n|C

max)(voirA. KamgaingKuiten[8℄).

3 Plusieurs mahines à haque étage

Dans ettesetion, nousnous intéressonsauas général il y aplusieursmahines aupre-

mier et au seond étage. C'est-à-direle problème

F HB

m1,m2

= F2(m

1

, m

2

)| p

_

batch(II), G

p

= IN T, k < n|C

max.

3.1 Bornes inférieures

Nousavonsdéveloppétroisbornespourleproblème

F HB

m1,m2,lapremièreestbaséesurune

borne inférieure du problème àun seul étage représentantle premier étage, laseonde sur elui

représentantleseond.Ladernièreborneinférieureestbaséesurlefaitquelatâhelapluslongue

doitêtreséquenée.

Borne

LB

1. Ladatedendel'exéutiondetouteslestâhessurlepremierétageestsupérieureà

P

ip1i

m1 ;aprèsl'exéutiondeladernièretâheilfaut(auminimum)séquenerlebathdanslequel

elleest,bathdontladuréeestminoréepar

min

j

a

j.D'oùlaborne :

LB

1

= P

i

p

1i

m

1

+ min

j

a

j

(5)

Borne

LB

2. Unbathestomposéaumoinsd'unetâhe,qu'ilfautavoirséquenéepréalablement sur lepremier étage. C'est-à-dire que le premier bath du seond étage ne peutpas ommener

avantland'exéutiond'aumoinsunetâhe,dontladuréeestsupérieureà

min

i

p

1i.Ensuitetous

lesbathesdoiventêtreexéutés,etteduréed'exéution est,dans lemeilleurdesas, ladatede

nde larésolutionduproblème représentantleseond étage(

Bm

2

|G

p

= IN T, k < n|C

max). Or

le

C

max fournipar l'exéution de l'algorithme FBCLPT, noté

C

max

(H

B

)

, permet d'obtenir une

borneinférieurepoureproblème.D'oùlaborne :

LB

2

= min

i

p

1i

+ C

max

(H

B

) m

2

Borne

LB

3. Toutetâhedoitêtreréalisée,ainsi,

LB

3

= max

i

{p

1i

+ a

i

}

3.2 Heuristiquesave performanes

Heuristique

H

LP T Dansetteheuristiquenousséquençonslestâhessurlepremierétageindé- pendammentduseondétage.LestâhessontséquenéesaupremierétagesuivantlesrèglesLPT

etFAM.Pourleseondétagenousutilisonslesbathesfournisparl'algorithmeFBCLPT.Lorsque

touteslestâhesd'unbathsontréaliséesaupremierétage,nousplaçonslebathenquestionsur

lapremièremahinelibreduseondétage.

Algorithme

H

LP T

1. Plaerlestâhessurlepremierétage,suivantlesrèglesFAMet LPT.

2. Appliquerl'algorithme FBCLPT,soit

L

lalistede bathesobtenue, soit

B

i le premierbath

delaliste

L

,

i = 1

.

3. Al'itération

i

,plaerlebath

B

isuivantlarègleFAMsurleseondétage.C'est-à-direlorsque touteslestâhesde

B

i aupremierétage sontterminées.Supprimer lebath

B

i de laliste

L

.

Si

L = ∅

,alors,retournerl'ordonnanementobtenu, sinon

i = i + 1

,allerà3.

Theorem1. L'heuristique

H

LP T fournitunordonnanement

S

HLP T duproblème

F HB

m1,m2 en

O(nlogn)

,aveunratio degarantie de performanede 83

3m2 ,etetteborne estatteinte.

Preuve : Soit

S

HLP T l'ordonnanementobtenu par l'heuristique

H

LP T. L'algorithme FBCLPT, aompagnédeLPBT,fournitunordonnanementduproblème

Bm|G

p

= IN T, k < n|C

max,noté

(

Bm

),ave unegarantiedeperformanede 43

3m1 [9℄.De plusLPTappliquéeaupremierétage

fournitunordonnanementde

P m||C

max,noté(

P m

),aveunegarantiedeperformanede 43

3m1

[5℄.D'où :

C

max

(S

HLP T

) ≤ C

max

(S

HP m

) + C

max

(S

HBm

)

43

3m1

C

max

(S

P m

) +

43

3m1

C

max

(S

Bm

)

Soit

S

l'ordonnanementoptimal duproblème deowshophybride, et

C

max

(S

)

sa date de

n,alors

C

max

(S

) ≥ C

max

(S

P m

) et C

max

(S

) ≥ C

max

(S

Bm

)

D'où:

C

max

(S

HLP T

) ≤

43

3m1

C

max

(S

P m

) +

43

3m1

C

max

(S

Bm

)

83

3m2

C

max

(S

)

Ainsil'heuristique

H

LP T fournitune solutionaveunfateur deperformanede 8 3

3m2 .

Nousallonsprésenterunaspourlequellaborne estatteinte.Noussupposonsque lenombre

demahine àhaqueétageestpair.

Soit

I

uneinstaneduproblème

F HB

m1,m2,laapaitédesbathesest

2m

1

+ 4

.Cetteinstane

(6)

Type Nombredetâhes

p

1

p

2

A

1 2

2m

1

− 1 [ǫ; 2m

2

− 1]

A

2 2

2m

1

− 2 [ǫ; 2m

2

− 1]

...

A

m1−1 2

m

1

+ 1 [ǫ; 2m

2

− 1]

A

m1 3

m

1

[ǫ; 2m

2

− 1]

B

1 2

ǫ [2m

2

− 1; 2m

2

− 1]

et

[2m

2

− 1 − ǫ; 2m

2

− 1 − ǫ]

B

2 2

ǫ [2m

2

− 2; 2m

2

− 2]

et

[2m

2

− 2 − ǫ; 2m

2

− 2 − ǫ]

...

B

m2−1 2

ǫ [m

2

+ 1; m

2

+ 1]

et

[m

2

+ 1 − ǫ; m

2

+ 1 − ǫ]

B

m2 3

ǫ [m

2

; m

2

]

,

[m

2

− ǫ; m

2

− ǫ]

et

[m

2

− 2ǫ; m

2

− 2ǫ]

C nb

C (entierquelonque)

ǫ [ǫ; ǫ]

Danseasl'algorithmeFBCLPTfournitunbathontenantlapremièretâhedetype

B

1,et

les

k −1

tâhesavelesquelleselleestompatible.C'est-à-dire,touteslestâhesdetype

A

(de

A

1à

A

m1).Ensuitelesautrestâhesdetype

B

n'étantompatiblesqu'avedestâhesdéjàplaéesdans

un bath, nous n'obtenons quedes bathes unitaires. Quant auxtâhes de typeC elles forment

nbkC

bathes.AndesimplierlesdiagrammesdeGanttnoussupposons

nb

C nul.

Danseasl'algorithmefournit l'ordonnanementdelagure2,alorsqu'unordonnanement

optimalesteluidelagure3.Eneetladateden

C

max

(S

HLP T

)

pourl'ordonnanement

S

HLP T

est égaleà

C

max

(S

HLP T

) = 2m

1

− 1 + m

1

+ m

1

+ 2m

2

− 1 + m

2

+ m

2

− 2ǫ = 4m

1

+ 4m

2

− 2 − 2ǫ

(gure 2).

Lavaleuroptimalepouretteinstane

I

est

C

max

(S

) = ⌈

mm2

1

+ 1⌉ǫ + 3m

(gure 3).

Bm2m2−2ǫ B12m2−1−ǫ

B22m2−2−ǫ ǫ

ǫ

Bm2m2−ǫ B12m2−1

B22m2−2 A12m1−1

A12m1−1 A22m1−2 A22m1−2

Am1m1

Am1m1

Am1−1m1+ 1 Am11m1+ 1

Am1m1

étage1

étage2

ǫ

Bm2/22m2−m2/2 Am1/2+1m1+m1/2-1

Am1/2+1m1+m1/2-1

Bm2/2+1m2+m2/2-1-ǫ Bm2/22m2−m2/2-ǫ

Bm

2/2+1m2+m2/2-1

Am1/22m1−m1/2 Am1/22m1−m1/2

Bm2m2

Bm21m2+1

Bm21m2+1-ǫ

Fig.2.OrdonnanementSHLP T

Si

m

1

≤ m

2 alors

C

max

(S

)

est optimal ar la borne inférieure

LB

1

= P

p1,i

m1

+ min

j

a

j est

atteintepar

C

max

(S

)

.Sinon,à

ǫ

près,laborneinférieure:

LB

2

= min

i

p

1i

+

Cmaxm(SBm)

2

estatteinte

par

C

max

(S

)

.

D'où:

C

max

(S

HLP T

)

C

max

(S

) = 4m

1

+ 4m

2

− 2 − 2ǫ

mm2

1

+ 1⌉ǫ + 3m

Et

ǫ→0

lim

4m

1

+ 4m

2

− 2 − 2ǫ

mm2

1

+ 1⌉ǫ + 3m = 4m

1

+ 4m

2

− 2

3m

(7)

ǫ ǫ ǫ ǫ

B22m2−2−ǫ B12m2−1−ǫ

Bm2m2−ǫ A12m1−1 A12m1−1 A22m1−2 A22m1−2

étage2

Am1m1 Am1m1 Am1m1

Am1/22m1−m1/2 Am1/22m1−m1/2 Am11m1+ 1 Am11m1+ 1 Am12m1+ 2 Am12m1+ 2

B12m2−1

B22m2−2

Bm22m2+2

Bm22m2+2-ǫ Bm21m2+1

Bm2m2−2ǫ Bm2m2

Bm2/22m2−m2/2 Bm2/22m2−m2/2−ǫ

Bm21m2+1-ǫ ǫ

étage1

Fig.3. Ordonnanementoptimal

Etdonsi

m

1

= m

2 alors

m = max(m

1

; m

2

) = m

1

= m

2.D'où : ǫ

lim

→0

C

max

(S

HLP T

)

C

max

(S

) = 4m

1

+ 4m

2

− 2

3m = 8

3 − 2 3m

Silenombredemahinesdel'étage

l

n'estpaspair,nousobtenonslemêmerésultat.Eneet,

les tâhesentrales (

p

l

= 2m

l

− (m

l

+ 1)/2

) de l'étage en question,sontalors séquenées surla

dernière mahine de l'étage dans l'ordonnanement optimal, ei ave la même durée que pour

lesautres mahines.Pourl'ordonnanementfourniparl'heuristiquee sontles4tâhesentrales

(

p

l

= 2m

l

− (m

l

− 1)/2

et

p

l

= 2m

l

− (m

l

+ 1)/2

)qui sontplaéessurlesdeuxdernièremahines,

toujourssansmodiationdeladatedenparrapportauaspair.Si

nb

C

> 0

,alorslesbathes

orrespondantsaux tâhesde type

C

sont plaés en nd'ordonnanement.Ainsi lorsque

ǫ

tend

vers0,laduréedeestâhesneompte plus.

Heuristique

H

LP BT Cette heuristique est une amélioration de l'heuristique

H

LP T, dans la

mesureelledonneenmoyennedemeilleursrésultats(voirlasetionexpérimentations).Ceine

l'empêhepasd'êtremoinsbonnedanslepireas.Eneetdansetteheuristiqueletraitementdu

premier étage nese faitplussuivant LPT surl'ensemble destâhes, maispourhaquebath du

seond étage.C'est àdirequelestâhesquileomposentsontséquenéessuivantFAM-LPTsur

lepremierétage.

Algorithme

H

LP BT

1. Appliquerl'algorithme FBCLPT.

2. Soit

L

lalistedesbathes

B

i obtenuegrâeàl'algorithmeFBCLPT,

i = 1

.

3. A l'itération i, soit

L

Bi laliste des tâhesdu bath

B

i. Séquener les tâhesde

L

Bi sur les

mahines du premier étage ensuivant les règlesFAM et LPT. Plaer le bath

B

i suivantla

règleFAM,'est-à-diresurlapremièremahinelibreduseondétage,lorsquetoutessestâhes

sontexéutéesaupremierétage.Supprimerlebath

B

idelaliste

L

.Si

L = ∅

,alors,retourner

l'ordonnanementobtenu,sinon

i = i + 1

,aller à3.

Theorem2. L'heuristique

H

LP BT fournit unordonnanement

S

HLP T B duproblème

F HB

m1,m2

en

O(nlogn)

,ave unratiode garantie de performane de 103

3m4 .

Preuve: Soit

S

HLP BT l'ordonnanementobtenuparl'heuristique

H

LP BT.L'algorithmeFBCLPT, aompagnéde LPT,fournit unordonnanementduproblème

Bm|G

p

= IN T, k < n|C

max,noté

(

Bm

),aveunegarantiedeperformanede 43

3m1 [9℄.Enrevanheleséquenementsurlepremier

Références

Documents relatifs

Ces évolutions du champ du sensible sont par conséquent de nature à transformer la relation des habitants à leur environnement, à éveiller de nouveaux imaginaires et à susciter

Relation entre l’ABA exogène fourni aux embryons soma- tiques de mélèze hybride et leur teneur interne en ABA mesurée par ELISA.. colloque de la section française de

Une carte heuristique (mind map en anglais), également appelée carte mentale, arbre à idées, est un diagramme qui représente les connexions de sens entre différentes idées,

– la première phase utilise l’algorithme inspiré de GRASP afin de générer une population de solutions représentant une bonne approximation tant au niveau de la distance à

• Dans un premier bécher introduire 10,0 mL de la

On dose ensuite par spectrophotométrie UV-Visible à

Le problème d’ordonnancement périodique de tâches (instructions) cycliques avec minimisation du nombre de registres, dans sa forme la plus générale, peut se formuler sous forme

on peut faiçe la distribution suivante, en ayant soin de compter une carte pour la valeur qu'elle indique, et toutes les figures pour 10 points : on retourne la première carte, qui