Page Numbers: Yes First Page: 1 Not-on-first-page
Heading:
Richard FikesPARC-CISRochester Bluebonnet Talk, February 9, 1983
The Bluebonnet Expert Help System
8An exploration of techniques for helping the user of a copier
8Based on analysis of naive users by Suchman and Henderson
8Bluebonnet demonstrates capabilities based on AI
8AI programming techniques provide flexibility and portability
The Copier As a Copying Expert
8Obtain description of task from user
8Decide how to do the task
8Direct the performance of the task
Describing the Task
8The 8200 panel is deficient in that it:
9Requires knowledge of the copier,
9Provide no help for deciding on an input processor,
9Asks confusing questions when original is bound.
8Only ask the user to describe the original and the desired copies.
8Display only questions relevant to the particular task.
(Demo Scenario)
Default answers
User can answer in any order and change any answers
Frees user from mechanical details of copier
Asks only meaningful questions
Describing the Task
8Only ask the user to describe the original and the desired copies.
8Display only questions relevant to the particular task.
8Help user decide what he wants.
8Task descriptions evolve because of unknown:
9 Functionality (e.g., stapling)
9 Costs (e.g., two-sided copies)
9 Restrictions (e.g., uncollated two-sided copies)
(Demo Scenario)
Topics
8Obtain description of task from user
We Are Here =>8Decide how to do the task
8Direct the performance of the task
Basic Procedures
81-sided copies from 1-sided RDHable originals
9Load RDH.
9If copies on nonstandard paper, then load top paper tray
9Press Start
9Unload output tray
9If copies on nonstandard paper, then unload top paper tray
9Unload RDH
8Uncollated unstapled 1-sided copies using the BDA
9If copies on nonstandard paper, then load top paper tray
9Open the RDH.
9(L1) Place original on glass and close cover.
9Press Start
9Open cover and remove original.
9If finished, close RDH, else go to L1.
9If copies on nonstandard paper, then unload top paper tray
9Unload output tray.
82-sided copies from 1-sided RDHable originals
(two passes using the 8200’s built-in procedure)
82-sided copies from 2-sided RDHable originals
(two passes using the 8200’s built-in procedure)
8Unstapled uncollated 1-sided copies from 2-sided RDHable originals
(two passes followed by a merge by hand)
Composite Procedures
8Either collated or stapled or 2-sided copies from a bound original
9[Make one 1-sided copy on standard paper from the bound original]
9[Make the desired copies using the copy from the first step as an original]
8Multiple or stapled 1-sided collated copies from 2-sided RDHable originals
9[Make one 1-sided copy on standard paper from the 2-sided RDHable originals]
9[Make the desired collated 1-sided copies using the copy from the first step as an original]
8Copies from originals too thick for the RDH, but otherwise RDHable
9Divide the original into sections of less than 50 pages each.
9For each section:
o[Make the desired copies of the section]
oUnload the output tray.
oAppend the copies to the copies of the earlier sections.
Generator for 1-to-1 Using the RDH
8Enabling conditions
#OfCopies > 0 AND
#OfOriginalImages > 0 AND
InputProcessor = ’RDH’ AND
OriginalTooThick = ’No’ AND
TwoSidedOriginals = ’No’ AND
TwoSidedCopies = ’No’ AND
(Staple = ’No’ OR Collate = ’Yes’) AND
(Staple = ’No’ OR CopiesTooThickToStaple = ’No’)
8Parameters
Collate CopyBrightness CopiesOnStandardPaper NumberOfCopies Reduction Staple
Constraints Used To Derive New Values
8Input Processor
(OriginalsBound = ’Yes’ AND Unbindable = ’No’) IMPLIES
InputProcessor = ’BDA’.
i.e., use the BDA for originals that are bound and not unbindable.
[OriginalsPaperTooFragileOrThick = ’No’ AND
OriginalsTooLarge = ’No’ AND
OriginalsTooSmall = ’No’ AND
(OriginalsBound = ’No’ OR Unbindable = ’Yes’)] IMPLIES
InputProcessor = ’RDH’.
i.e., use the RDH for unbound or unbindable originals that are not too fragile, too thick, too large, or too small.
[(OriginalsBound = ’No’ OR Unbindable = ’Yes’) AND
(OriginalsTooSmall = ’Yes’ OR OriginalsTooLarge = ’Yes’ OR
OriginalsPaperTooFragileOrThick = ’Yes’)] IMPLIES
InputProcessor = ’Glass’.
i.e., use the glass for unbound or unbindable originals that are either too small, too large, too fragile, or too thick for the RDH.
OriginalsStandardSize = ’Yes’ IMPLIES
(OriginalsTooSmall = ’No’ AND OriginalsTooLarge = ’No’).
i.e., standard size originals are not too small nor too large for the RDH.
OriginalsOnStandardPaper = ’Yes IMPLIES
OriginalsPaperTooFragileOrThick = ’No’.
(i.e., originals on standard paper are not too fragile nor too thick for the RDH.
Constraints Used To Derive New Values (continued)
8Original Too Thick for RDH and Copies Too Thick To Staple
IF #OfCopySheets > 35 THEN CopiesTooThickToStaple = ’Yes’ ELSE CopiesTooThickToStaple = ’No’.
(i.e., copies having more than 35 sheets are too thick for the 8200 stapler.
IF (#OfOriginalImages > 50 AND TwoSidedOriginals = ’No’) OR
(#OfOriginalImages > 100 AND TwoSidedOriginals = ’Yes’) THEN OriginalTooThick = ’Yes’ ELSE OriginalTooThick = ’No’.
(i.e., originals having more than 50 sheets are too thick for the RDH.
TwoSidedCopies = ’No’ IMPLIES #OfCopySheets = #OfOriginalImages.
i.e., the number of sheets in a 1-sided copy is the number of images copied.
TwoSidedCopies = ’Yes’ IMPLIES #OfCopySheets = (#OfOriginalImages / 2).
i.e., the number of sheets in a 2-sided copy is 1/2 the number of images copied.
Help Units For Tasks Without Procedures
8 Collate = ’No’ AND Staple = ’No’.
Comment: The 8200 cannot staple uncollated copies. It can make unstapled copies, which you can then staple.
Action: Change Staple to ’No’.
8 TwoSidedCopies = ’Yes’ AND Collate = ’No’.
Comment: The 8200 cannot make uncollated two-sided copies. It can make collated copies, which you can then uncollate.)
Action: Change Collate to ’Yes’.
8 Staple = ’Yes’ AND CopiesTooThickToStaple = ’Yes’.
Comment: Your copies will be too thick for the 8200 to staple. It can make unstapled copies, which you can then staple.
Action: Change Staple to ’No’.
8 OriginalTooThick = ’Yes’ AND
InputProcessor = ’RDH’ AND
Staple = ’Yes’.
Comment: The 8200 cannot staple copies of an original that is too thick for the RDH. It can make unstapled copies, which you can then staple.
Action: Change Staple to ’No’.
8 ~(#OfCopies > 0).
Comment: Indicate number of copies desired.
Action: None.
Topics
8Obtain description of task from user
8Decide how to do the task
We Are Here =>8Direct the performance of the task
(Demo Scenario)
8Remove the copy from the output tray and reverse the order of the pages.
8Use the copy just made as the original in the following steps.
8Place the paper on which the copies are to be made in the top paper tray.
8Place your originals in the RDH. first page on top.
(so that the RDH can automatically feed each sheet into the copier)
8Press the Start button.
(to make the 3 copies)
8Your copies are now being made. Each sheet of the original is being taken into the copier by the RDH, copied once, and returned. When all sheets have been returned, a copy will be stapled and put into the output tray. Each copy is made in the same manner.
8Remove your paper from the top paper tray.
8Remove your originals from the RDH.
8Remove the copies from the output tray.
8Thank you. Your job is completed.
Job State
8Machine State (93 fields)
AddPaper
Copy
CopyMode
DocumentInRDH
OffsettingCatchTray
Output
PaperTray
RdhOpen
Ready
Reduction
ShadeOpen
State
StatusCodeSeeInstructions
.
.
.
8Plan Execution State
FirstPageCopied
CopiesMade
Pass1Done
PlanIntroduced
1-Sided to 1-Sided on Nonstandard Paper
Step 1:SetPanel.
Step 2:TellUser "Place the paper ... in the top paper tray".
Step 3:TellUser "Place originals in RDH".
Step 4:MakeReady.
Step 5:TellUser "Press Start". Requirements:
Panel Set (if not, try Step 1)
"Add Paper" light off (if not, try Step 2)
DocumentInRDH (if not, try Step 3)
Ready State (if not, try Step 4)
Step 6:CompletePrintingStep. (sets CopiesMade) Requirements:
Printing State (if not, try Step 5)
Step 7:TellUser "Remove paper from top paper tray".
Step 8:Select BottomPaperTray. Requirements:
"Add Paper" light on (if not, try Step 7)
Step 9:TellUser "Remove originals from RDH".
Step 10:TellUser "Remove copies from output tray".
Step 11:TellUser "Thank You. ... ". Requirements:
CopiesMade (if not, try Step 6)
BottomPaperTray selected (if not, try Step 8)
~DocumentInRDH (if not, try Step 9)
OffsettingCatchTrayEmpty (if not, try Step 10)
Ready State (if not, try Step 4)
Basic Procedure For Bound Original
Step 1:SetPanel.
Step 2:TellUser "Pull BDA latch forward." "Raise the RDH."
Step 3:TellUser "Place first page of original face down on the glass, ..." "Slide document cover left over original ..." Requirements:
RdhOpen (if not, try Step 2)
Step 4:MakeReady.
Step 5:TellUser "Press Start". Requirements:
Panel Set (if not, try Step 1)
~ShadeOpen (if not, try Step 3)
Ready State (if not, try Step 4)
Step 6:CompletePrintingStep. (sets FirstPageCopied and CopiesMade) Requirements:
Printing State (if not, try Step 5)
Step 7:TellUser "Press Start". Requirements:
Panel Set (if not, try Step 1)
Ready State (if not, try Step 4)
Step 8:CompletePrintingStep. (sets CopiesMade) Requirements:
Printing State (if not, try Step 7)
Step 9:TellUser "Slide document cover right." Requirements:
CopiesMade (if not, try Step 8)
Step 10:TellUser "Remove original from glass." "If more originals ... then place next ... on the glass. Slide document cover left ... . Otherwise, lower the RDH ..." (clears CopiesMade) Requirements:
ShadeOpen (if not, try step 9)
Step 11:TellUser "Remove the copies from the output tray."
Step 12:TellUser "Thank you ..." Requirements:
FirstPageCopied (if not, try step 6)
~RdhOpen (if not, try step 10)
~OffsettingCatchTray (if not, try step 11)
Ready State (if not, try step 4)
Summary of Bluebonnet’s Behavioral Features
8Frees user from mechanical details of copier.
e.g., asks "Copies on standard paper?" rather than "Top or bottom paper tray?".
8Asks only meaningful questions.
e.g., doesn’t ask "Are originals 2-sided?" when the original is a bound document.
8Recognizes inconsistent job descriptions.
e.g., informs the user that the 8200 cannot make 2-sided uncollated copies.
8Determines the procedure for a given copy job.
e.g., use the BDA to make a master, then put the master in the RDH.
8Provides instructions for doing the job.
9 Includes purpose of step.
9 Describes what copier is doing.
8Monitors progress of job.
9 Notices when steps have already been done.
9 Requests steps to be redone when needed.
TITLE
Overview
Describe some ways of expanding a copier’s capabilities to deal with user operability problems.
Demonstrate a prototype of these capabilities.
Indicate the AI programming techniques that provide experimental flexibility and portability.
System as a copying expert
Obtains description of task from user
Decides how to do the task.
Directs the performance of the task.
Obtain description of copy job
Describe originals and desired copies.
Not which paper tray or which input processor.
Problem: what information is needed in the description?
Information needed to determine which procedure. Then parameters to procedure.
Use determination of input processor as example. Show upper half of description panel. Show introduction of detailed questions, elimination of questions when bound.
Make the frequently occuring cases simple.
Ask only necessary questions.
Minimize work of user.
Reduce confusion.
Provide Advice
(one slide here reprising the points from above and introducing the main points here)
Main pont: task descriptions evolve. Unknown functionality (stapling), unknown costs (two-sided copies), unknown restrictions (uncollated two-sided copies).
User evolves a description of the task. Tennis shoe example.
Helps user decide what he wants by indicating cost tradeoffs of alternative jobs.
Time Estimates
Help when task cannot be done.
Suggestion of task change to save time for multiple pass procedures.
Explanation of questions.
Determine a procedure.
Plan Generators with procedure builder, enabling conditions, parameters, time estimator, and advice giver.
Derivation Rules
Direct performance of procedure.
Make monitoring points about repeating and omitting steps.
Flexibility and Portability
Procedure descriptions determine what questions to ask, what jobs are doable, what procedure to use.
"Help units" indicate when to apply them and what to do.
Derivation rules define relationships among job features.
Plan representation allows flexible monitoring without determining all possible situations after each step.
Summary Slide
Generator for BDA-No-Master
8Enabling conditions
#OfCopies > 0 AND
#OfOriginalImages > 0 AND
(InputProcessor = ’BDA’ OR InputProcessor = ’Glass’) AND
(NumberOfCopies = 1 OR Collate = ’No’) AND
TwoSidedCopies = ’No’ AND Staple = ’No’
8Parameters
CopyBrightness CopiesOnStandardPaper NumberOfCopies Reduction
8Procedure builder
8Time estimator
8Advice giver