Design Process Improvement
with Assistant BOT
명지대학교 RPA 기말 프로젝트
융합소프트웨어학과 60140863 김민수
경영정보학과 60155262 김영섭
경영정보학과 60181109 윤주안
RPA Final Project Team 1
목 차
I. The Reason We Choose
I. 미래의 RPA 문제점 고찰
II. 대상 프로세스
II. Design Process Improvement
I. What We Use To Improve Design Process
II. Permission PDF File Process
III. Assistant BOT Process
IV. Reporting & Mailing Process
미래의 RPA 문제점 고찰
3
Design Process Improvement
with Assistant BOT
Real World
Process
Computerlization
BOT
RPA Solution
프로세스 성숙도시간
WE JUST NEED TIME!
미래의 RPA 문제점 고찰
4
Design Process Improvement
with Assistant BOT
Not-Formulaic Data?
RPACognitive
Analysis
RPA
Growth of RPA
미래의 RPA 문제점 고찰
5
Design Process Improvement
with Assistant BOT
1인 1봇 시대
소외된 직무/분야 예술
인간의 센스가 필요한 분야
“예술”
Future Way of RPA
대상 프로세스
6
Design Process Improvement
with Assistant BOT
회의
기타 작업
영감
스케치
구체화
기존 디자인 시안 프로세스
회의
기타 작업
영감
스케치
구체화
회의
기타 작업
영감
스케치
구체화
회의
기타 작업
영감
스케치
구체화
일주일 평균 시안 작업건 수: 100건
시안 작업물
선정
상품 디자인을 위한 시안 프로세스가 과연
비용적으로 합리적인 프로세스일까?
대상 프로세스
7
Design Process Improvement
with Assistant BOT
Work
Time
Human
BOT
Time Saving
Design Process Improvement
“Do Your Own Work”
What We Use To Improve Design Process
8
Design Process Improvement
with Assistant BOT
Source Code
RPA
UiPath Project
File Name
Pix2PixUIPATH.py
PatternSimulatorDemo.py
ImageRotation.py
Used Library
TensorFlow
Sci-Kit Learning
OpenCV
Numpy
Random
OS
Shutil
Supporting Code
Permission PDF File Process
9
Design Process Improvement
with Assistant BOT
Checking Permission PDF Files
Negative Case
Positive Case
Reject 기준
각 케이스를 어떻게 판단해야 하는가?
Permission PDF File Process
10
Design Process Improvement
with Assistant BOT
Checking Permission PDF Files
Making Sample
Rotation()
RemoveBackground()
Loop
IF Image Match > 0.5, THEN Loop Break
[PDF to Word] PDF 내용 텍스트 파일 저장
Rejected Folder
Permission PDF File Process
11
Design Process Improvement
with Assistant BOT
Handing Text File To Assistant BOT
Design Image Path
Handing_#.txt Assistant BOTPermissionFile.pdf
Images.jpeg
RejectedFile.pdf
Permission PDF File Process
12
Design Process Improvement
with Assistant BOT
How To Activate Assistant BOT
Python Scope
Tensorflow
OpenCV
Sci-Kit Learning
Numpy
Random
OS
Shutil
Holding Process
Element Exists = True
Start Process ‘Pix2PixUIPATH.py’
SituationBoolean = True
IF Element Exists = False, THEN SituationBoolean = False (= Proceed Process)
While True
Request Element Exists
Not Working
Assistant BOT Process
13
Design Process Improvement
with Assistant BOT
How To Process
Pix2Pix Algorithm
Assistant BOT
Function GetColorVariety()
Vanilla GAN
Convolution Network
Decoding-Encoding(U-net)
Supervised Learning Skills
K-Mean Clustering
Pattern Simulator Demo
14
Ground Truth Image
Canny Image
Image Data Set
… …
Encoding Decoding
U-net 구조
Generated
ImageNormalize Denormalize
생성자
Pix2Pix Algorithm
Assistant BOT Process
Image To Image Translation
Design Process Improvement
with Assistant BOT
15
Canny Image
Generated
Image
Real Image
판별자
Fake Image
Ground Truth Image
Fake
Real
생성자Update
Probability of Discriminate Real Image
Probability of Discriminate Fake Image
-
D_Loss
G_Loss_GAN
G_Loss_L1
G_Loss
Pix2Pix Algorithm
Assistant BOT Process
Design Process Improvement
with Assistant BOT
Convolution
16
생성자
판별자
D_Loss
G_Loss
Image Data Set
Optimizer
데이터 학습
Model
최적화 진행
Pix2Pix Algorithm
Assistant BOT Process
Design Process Improvement
with Assistant BOT
Image Data Set
for Model Breaking
Model Breaking
*색상 다채화를 위해 이러한 작업을 시도해보았지만
알맞은 대안은 아니었습니다.
Problem
하나의 색상밖에 추출하지 못한다.
17
Making Result’s Various Color
n개의 초기 중심점으로부터 각 점간의 거리의 합이 가장 최소화 되는 중심점 탐색
탐색된 중심점에서 가까운 점들 클러스터링 진행
n=12
[0,1,2, … , 12]
Extracted 3-Cluster
Random Color x 150
Function GetColorVariety()
Assistant BOT Process
Design Process Improvement
with Assistant BOT
Pattern Simulator Demo
Assistant BOT Process
Design Process Improvement
with Assistant BOT
빨간색 영역 추출
All
Stripe
Bottom
…
You can make custom area
Simple Algorithm Easy Customizing
Pattern Image
Reporting & Mailing Process
Design Process Improvement
with Assistant BOT
Informal Reporting
Not Log OnLog On
Checking Log-In Frame Entering Chat Room
IF Log On
IF Not Log On
Finding Chat Room
Start Log In
Entering Chat Room
Finding Chat Room
Start Messagener
Reporting
Reporting & Mailing Process
Design Process Improvement
with Assistant BOT
Typing Result Document & Mailing
작업산출물 보고 양식
문서 작성
+
Demonstration
21
MediaRecognitionAutomaticMosaicTargeting
https://www.youtube.com/watch?v=W8s2-N-wWU8

Design process improvement with assistant bot

  • 1.
    Design Process Improvement withAssistant BOT 명지대학교 RPA 기말 프로젝트 융합소프트웨어학과 60140863 김민수 경영정보학과 60155262 김영섭 경영정보학과 60181109 윤주안 RPA Final Project Team 1
  • 2.
    목 차 I. TheReason We Choose I. 미래의 RPA 문제점 고찰 II. 대상 프로세스 II. Design Process Improvement I. What We Use To Improve Design Process II. Permission PDF File Process III. Assistant BOT Process IV. Reporting & Mailing Process
  • 3.
    미래의 RPA 문제점고찰 3 Design Process Improvement with Assistant BOT Real World Process Computerlization BOT RPA Solution 프로세스 성숙도시간 WE JUST NEED TIME!
  • 4.
    미래의 RPA 문제점고찰 4 Design Process Improvement with Assistant BOT Not-Formulaic Data? RPACognitive Analysis RPA Growth of RPA
  • 5.
    미래의 RPA 문제점고찰 5 Design Process Improvement with Assistant BOT 1인 1봇 시대 소외된 직무/분야 예술 인간의 센스가 필요한 분야 “예술” Future Way of RPA
  • 6.
    대상 프로세스 6 Design ProcessImprovement with Assistant BOT 회의 기타 작업 영감 스케치 구체화 기존 디자인 시안 프로세스 회의 기타 작업 영감 스케치 구체화 회의 기타 작업 영감 스케치 구체화 회의 기타 작업 영감 스케치 구체화 일주일 평균 시안 작업건 수: 100건 시안 작업물 선정 상품 디자인을 위한 시안 프로세스가 과연 비용적으로 합리적인 프로세스일까?
  • 7.
    대상 프로세스 7 Design ProcessImprovement with Assistant BOT Work Time Human BOT Time Saving Design Process Improvement “Do Your Own Work”
  • 8.
    What We UseTo Improve Design Process 8 Design Process Improvement with Assistant BOT Source Code RPA UiPath Project File Name Pix2PixUIPATH.py PatternSimulatorDemo.py ImageRotation.py Used Library TensorFlow Sci-Kit Learning OpenCV Numpy Random OS Shutil Supporting Code
  • 9.
    Permission PDF FileProcess 9 Design Process Improvement with Assistant BOT Checking Permission PDF Files Negative Case Positive Case Reject 기준 각 케이스를 어떻게 판단해야 하는가?
  • 10.
    Permission PDF FileProcess 10 Design Process Improvement with Assistant BOT Checking Permission PDF Files Making Sample Rotation() RemoveBackground() Loop IF Image Match > 0.5, THEN Loop Break [PDF to Word] PDF 내용 텍스트 파일 저장 Rejected Folder
  • 11.
    Permission PDF FileProcess 11 Design Process Improvement with Assistant BOT Handing Text File To Assistant BOT Design Image Path Handing_#.txt Assistant BOTPermissionFile.pdf Images.jpeg RejectedFile.pdf
  • 12.
    Permission PDF FileProcess 12 Design Process Improvement with Assistant BOT How To Activate Assistant BOT Python Scope Tensorflow OpenCV Sci-Kit Learning Numpy Random OS Shutil Holding Process Element Exists = True Start Process ‘Pix2PixUIPATH.py’ SituationBoolean = True IF Element Exists = False, THEN SituationBoolean = False (= Proceed Process) While True Request Element Exists Not Working
  • 13.
    Assistant BOT Process 13 DesignProcess Improvement with Assistant BOT How To Process Pix2Pix Algorithm Assistant BOT Function GetColorVariety() Vanilla GAN Convolution Network Decoding-Encoding(U-net) Supervised Learning Skills K-Mean Clustering Pattern Simulator Demo
  • 14.
    14 Ground Truth Image CannyImage Image Data Set … … Encoding Decoding U-net 구조 Generated ImageNormalize Denormalize 생성자 Pix2Pix Algorithm Assistant BOT Process Image To Image Translation Design Process Improvement with Assistant BOT
  • 15.
    15 Canny Image Generated Image Real Image 판별자 FakeImage Ground Truth Image Fake Real 생성자Update Probability of Discriminate Real Image Probability of Discriminate Fake Image - D_Loss G_Loss_GAN G_Loss_L1 G_Loss Pix2Pix Algorithm Assistant BOT Process Design Process Improvement with Assistant BOT Convolution
  • 16.
    16 생성자 판별자 D_Loss G_Loss Image Data Set Optimizer 데이터학습 Model 최적화 진행 Pix2Pix Algorithm Assistant BOT Process Design Process Improvement with Assistant BOT Image Data Set for Model Breaking Model Breaking *색상 다채화를 위해 이러한 작업을 시도해보았지만 알맞은 대안은 아니었습니다. Problem 하나의 색상밖에 추출하지 못한다.
  • 17.
    17 Making Result’s VariousColor n개의 초기 중심점으로부터 각 점간의 거리의 합이 가장 최소화 되는 중심점 탐색 탐색된 중심점에서 가까운 점들 클러스터링 진행 n=12 [0,1,2, … , 12] Extracted 3-Cluster Random Color x 150 Function GetColorVariety() Assistant BOT Process Design Process Improvement with Assistant BOT
  • 18.
    Pattern Simulator Demo AssistantBOT Process Design Process Improvement with Assistant BOT 빨간색 영역 추출 All Stripe Bottom … You can make custom area Simple Algorithm Easy Customizing Pattern Image
  • 19.
    Reporting & MailingProcess Design Process Improvement with Assistant BOT Informal Reporting Not Log OnLog On Checking Log-In Frame Entering Chat Room IF Log On IF Not Log On Finding Chat Room Start Log In Entering Chat Room Finding Chat Room Start Messagener Reporting
  • 20.
    Reporting & MailingProcess Design Process Improvement with Assistant BOT Typing Result Document & Mailing 작업산출물 보고 양식 문서 작성 +
  • 21.

Editor's Notes

  • #4 시간이 흐를수록 프로세스 성숙도는 상승할 것이라 생각합니다. 비표준화된 프로세스는 점차 표준화될 것입니다. RPA가 확산되기까지 저희가 필요한 건 “시간”입니다.
  • #5 컴퓨팅 비전, 딥러닝 분야 등의 성장과 함께 RPA는 더욱 성장할 것입니다. 비정형화된 데이터 혹은 데이터화 되지 않은 문서? 프로세스의 성숙과 인지기술의 성장으로 해결될 것이라 생각합니다.
  • #6 그렇게 1인 1봇의 시대가 도래했을 때, 소외된 직무/분야가 바로 미래 RPA산업의 문제점이자 미래라고 생각했습니다. 소외된 직무/분야는 인간의 센스가 필요한 “예술”의 영역일 것입니다. 저희가 기말 프로젝트의 방향성을 디자인으로 잡은 것 또한 이것 때문입니다.
  • #7 기존의 디자인 시안 프로세스는 평균적으로 일주일 동안 약 100건 정도의 작업물을 내놓는다고 합니다. 분명 이것이 상품을 위한 디자이너들의 노력이 담긴 프로세스인 것은 사실이지만, 저희들은 의문점을 제기하였습니다. 과연 이러한 프로세스가 비용적으로 “합리적인” 프로세스인가? 였습니다.
  • #8 시간이 지나면 능률은 떨어질 수 밖에 없습니다. 디자인 시안을 스케치하고 여러 작업을 진행하고 산출된 20개의 시안을 두고 다시 회의를 합니다. 이러한 반복작업을 거쳐 일주일동안 100여개의 작업물을 산출하고 최종적으로 상품화를 진행할 디자인을 선정합니다. 그러나 이것을 반대로 생각하여 스케치는 인간이 하고, 기타 작업은 봇이 하는 프로세스는 어떠한지 생각해보게 되었습니다. 비용적으로 비효율적인 기존의 프로세스를 탈피하여 효율적이며 인간 본연의 업무에 집중할 수 있도록 하자는 것이 저희 조의 기말 프로젝트 주제입니다.
  • #9 RPA 프로젝트 ‘디자인 프로세스 개선’은 UiPath 프로젝트 파일과 서포팅하는 3개의 코드로 구성되어 있습니다. UiPath 프로젝트 프로세스의 전반적인 흐름을 제어합니다. 시안요청서 진행 여부를 판단하고, 스케치 및 패턴 이미지 파일을 딥러닝 모델에 전달하는 역할을 수행합니다. 또한 결과물을 메신저를 통해 약식보고를 진행하며, 결과 보고서 작성 및 메일을 전송합니다. Pix2PixUIPATH.py GAN(Generative Adversarial Network)의 파생형 모델인 Pix2Pix 구현 코드입니다. 해당 모델은 스케치파일을 구체화하며, K-Mean Clustering을 통해 대표색상 12가지를 추출한 뒤 3가지 영역에 대해 랜덤 색상을 부여합니다. PatternSimulatorDemo.py 패턴이미지를 반팔티셔츠 이미지의 원하는 영역에 삽입합니다. 현업자 분이 원하는 자동화 분야이기 때문에 구현하였습니다. ImageRotation.py 이미지 매칭의 허용치를 위해 도장 이미지를 회전하여 저장합니다. 도장 이미지의 양각 25도를 회전시키며, 이를 넘어간 회전율은 예외처리(거부된 PDF파일)합니다. 사전작업을 위해 사용된 코드이며, 프로젝트 내에선 진행하지 않습니다.
  • #10 [시안 요청서 PDF 파일] 시안 요청서의 결재란을 보고 진행여부를 판단합니다. Negative Case: 양각 25도를 넘는 회전율, 이미지 훼손 Positive Case: 허용치 내의 회전율, 일반적 이미지
  • #11 진행 허용치는 ‘Image Match > 0.5’ 입니다. 그러나 PPT를 보시는 것처럼 일정수준의 도장 이미지가 회전한 정도는 허용해야 하므로 ImageRotation.py를 통해 Loop문에 진입하여 생성된 이미지와 일치여부를 진행합니다. (최대 허용치는 양각 25도 입니다.) Negative Case라고 판단되면 예외사항으로 간주하여 Rejected Folder로 해당 PDF파일을 이동합니다. Positive Case라고 판단되면 다음 프로세스로 진행합니다.
  • #12 승인된 PDF 파일의 내용은 Read PDF Activity를 통해 “Handing_#” 형식의 텍스트파일로 저장됩니다. 이는 해당 스케치 및 패턴 이미지의 경로를 Assistant BOT(ML/DL Model)에게 전달해주기 위한 작업입니다.
  • #13 저희 팀은 프로젝트를 진행하는 도중 Python Scope Activity 오류가 발생함을 확인하였습니다. 일반적인 코드는 진행 가능하지만, ML/DL Model이 구현된 코드는 Python Scope 작업을 멈춥니다. 이 문제를 해결하기 위해, 저희는 Start Process Activity를 이용하여 코드를 직접 인터프리팅하여 프로세스를 진행하였습니다. 그러나 Start Process Activity를 수행한 뒤 딜레이 없이 다음 작업으로 넘어가는 것을 방지하기 위해 다음과 같은 조치를 취하였습니다. 1. SituationBoolean = True 인 동안 Element Exists(대상: cmd)를 요청합니다. 2. Element Exists = True가 반환되면 Assistant BOT이 구동중이기 때문에 다음 작업으로 진행되지 않습니다. 3. Element Exists = False가 반환되면 Assistant BOT의 작업이 완료가 되었기 때문에, SituationBoolean = False로 변환합니다. 4. 해당 Loop문은 SiationBoolean = True인 동안에만 진행되기 때문에 Element Exists = False이면 해당 Loop문을 중단하며, 다음 작업으로 진행합니다.
  • #14 Assistant BOT(ML/DL Model)은 다음과 같이 구성되어 있습니다. Pix2Pix Algorithm Pix2Pix Algorithm은 기존의 GAN 모델의 파생형 모델입니다. 이미지의 특징 추출을 위해 정보의 손실을 막기 위해 Convolution Network에서 변형된 U-net구조가 사용됩니다. 또한, GAN 모델은 기본적으로 비지도 학습 방식을 취하지만 판별자의 손실함수를 줄이는데 지도 학습 방식이 일부 사용됩니다. Function GetColorVariety() K-Mean 군집화를 통해 대표색상 12가지를 추려내고 그 중 3가지 영역에 랜덤 색상을 부여합니다. Pattern Simulator Demo 일정한 패턴 이미지를 반팔티셔츠 이미지의 원하는 영역에 삽입합니다.
  • #15 Pix2Pix Algorithm은 Image To Image Translation 기술입니다. 모델의 학습방식은 다음과 같습니다. 1. Image Data Set은 {실제 이미지, 외곽선 이미지}로 구성되어 있습니다. * 외곽선 추출은 OpenCV의 Canny함수를 사용하였습니다. 2. 생성자는 Canny Image를 정규화하여 U-net 구조를 통해 그 특징들을 추출합니다. 특징들이 추출되어 3차원으로 겹겹이 쌓이며, 행렬은 (특징추출 개수)x(넓이/2)x(높이/2)와 같은 형태로 반환됩니다. U-net 구조는 Convolution Network와 유사한 구조를 가지고 있지만, 다음과 같은 차이점을 가지고 있습니다. a. Convolution Network는 Maxpooling, ReLU(활성화함수)를 포함하며, 위와 같이 역방향(Decoding부분)은 진행하지 않습니다. b. U-net 구조는 Maxpooling 과정이 없고, Leaky ReLU(활성화함수)와 Tanh(활성화함수)를 사용하며, 역방향으로 진행할 때, 정보의 손실을 막기 위해 Encoding 단계의 행렬을 더하여 행렬을 펼쳐줍니다. 3. Decoding을 진행하고 정규화된 이미지를 비정규화하여 색상을 표현합니다. 다음 장에 계속…
  • #16  4. 판별자는 (Generated Image + Canny Image), (Ground Truth Image + Canny Image)를 각각 Fake Image, Real Image를 Convolution Network를 통해 특징을 추출하여 학습하게 됩니다. 5. 이때의 손실함수는 다음과 같습니다. a. G_Loss: 생성자 손실함수, 판별자가 가짜 이미지를 선택할 확률을 높힙니다. b. D_Loss: 판별자 손실함수, 판별자가 진짜 이미지를 선택할 확률을 높힙니다. 6. 이러한 정보를 다시 생성자에게 갱신하여 보다 진짜같은 이미지를 생성하게 만듭니다. 다음 장에 계속…
  • #17 데이터의 학습과정을 다시 정리해보자면, 생성자는 특징을 추출하여 가짜 이미지를 생성하고, 판별자는 진짜 이미지와 가짜 이미지를 학습합니다. 이때 양측의 손실함수는 Adam Optimizer를 통해 최적화를 진행하고 다시 생성자에게 정보를 갱신합니다. 이러한 반복적 학습을 통해 모델을 생성합니다. 그러나 문제는 이미지의 색상이 다채롭지 않다는 것이었습니다. 이러한 문제를 해결하지 못한다면 이 프로젝트는 딥러닝을 위한 프로젝트일 뿐이라는 결론을 내려 색상 다채화 작업을 진행하였습니다.
  • #18 색상 다채화를 위해 머신러닝의 비지도 학습 방법인 K-Mean Clustering을 선택했습니다. 군집화 작업을 통해 12가지의 대표색상을 추려냅니다. 이러한 12가지의 대표색상 영역 중 3가지 색상의 영역을 추출하여 해당 영역에 랜덤색상을 부여합니다. 그렇게 150가지의 이미지를 생성합니다. *봇이 인간의 고유영역을 완벽하게 재연하지 못하면, 영감이라도 주어야 한다는 것이 저희 조의 생각이었습니다.
  • #19 패턴입력 자동화 알고리즘은 간단하게 작성되었습니다. 반팔티셔츠의 빨간색 영역을 추출하여 해당 영역에 패턴 이미지를 사이즈 조정한 뒤 입력해줍니다. Pattern Simulator Demo는 기본적으로 4개의 영역을 제공하고 있지만, 간단하게 작성되었기 때문에 반팔티셔츠의 빨간색 영역을 개인적으로 수정하여 원하는 영역에서도 작업할 수 있게 만들었습니다.
  • #20 디자인 작업이 끝나면 다음과 같이 로그인/ 비로그인 화면 경우를 판별하여, 팀 채팅방에 약식보고를 올립니다. 내용은 승인된 PDF파일, 반려된 PDF파일과 작업내용물 압축파일을 전송합니다.
  • #21 기존의 작업산출물 보고 양식을 불러와 작업 내용을 작성합니다. 작업산출물 보고서와 작업산출물 압출파일을 담당자에게 메일을 발송하며 프로세스는 종료됩니다.