Outel Semiconductor’s Recruiting Circuit: Teacher Resources 1
TEACHER RESOURCES
Routing Through Networks: Background
Graphs and networks are collections of nodes and arcs. The nodes are used to represent
cities, major intersections, or individual customer locations. The arcs are used to
represent the linkages between nodes. The linkages could be telecommunication lines or
roads. The links can be one-way or bi-directional. Numeric values on the links can
represent the actual length of the link, the distance as the crow flies, or the time to
traverse the link. In routing applications, it is important to use travel times and not just
distances. Two miles on the open road are traversed much faster than two miles through
city streets. In addition, these data will often need to be adjusted by time of day.
The field of graph theory dates back more than two hundreds years with mathematicians
such as Euler actively involved in its theoretical analysis. Graph theorists were primarily
interested in understanding the properties of different graph structures without numeric
values attached to the arcs. With the growth of computers, the study of networks moved
into a new phase in the 1950s and 60s that focused on the development of efficient
algorithms to solve optimization problems in routing. Networks were no longer just a
collection of nodes and arcs; arcs now included numeric values which could represent
either distance or time. One of the first class of problems that was solved related to
finding the shortest path between two points (nodes) on a network. A computer scientist
named Dijkstra developed one of the first efficient algorithms for solving this problem.
Dijkstra‘s algorithm is the basis for widely available software that responds to requests
for finding the shortest or fastest route to a specific location. In addition, this algorithm is
an important element of the management of information traveling through a
telecommunications network.
In the 1970s operations researchers began to study two classes of vehicle routing
problems, the traveling salesman problem and the Chinese postman problem. One class
of problems involves an individual or vehicle traveling along the shortest route from node
to node, visiting every node in the network and then returning home to its base. (The 19th
century mathematician William Hamilton first posed the question of the existence of a
circuit that visited each node once and only once.) This problem is called the traveling
salesman problem (TSP), as it represents the challenge facing a salesman who must travel
from city to city and return home. It is part of a broad class of problems for which we
know it is NOT possible to develop algorithms that are guaranteed to find the absolute
optimal solution in a reasonable period of time. Instead, operations researchers work on
developing heuristic algorithms that search for good or near optimal solutions. These
algorithms generally have two phases. The first phase attempts to find a good initial
solution. The second phase involves minor modifications to the best solution found so far
in order to create better and better routes.
In practical applications, the transportation manager rarely deals with routing just one
vehicle. Instead, he has a whole fleet of vehicles. In this case the algorithms must divide
the set of nodes (pick-up or delivery points) into separate routes, with each route assigned
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 2
to a vehicle. Companies such as Federal Express have large internal operations research
groups working on a wide range of issues related to the routing of vehicles and the
overall management of the truck fleet. In contrast, a bank such as Wells Fargo or Bank of
America might commission a consulting firm to design the routes for a fleet of trucks.
These trucks pick up cancelled checks several times a day at the bank branch offices and
then deliver them to a check clearing house for posting with the Federal Reserve for
collection of funds. School bus routing also involves applying algorithms used to solve
TSP.
In the not so good old days, routing software ran on a mainframe computer. The solution
was printed out as a sequential list of stops. To see the route, an individual would take a
piece of see-through vellum, lay it over a big map and trace the route by hand. If a
mistake had been made in the input data or new stops had to be added, the process would
have to start all over again and the original piece of vellum tossed out. In the 1980s, the
personal computer revolutionized this process. Not only could the algorithms be run
almost instantaneously on the manager‘s desk, more importantly the solutions could be
linked to widely available geographic information systems (GIS). As a result the routes
could be shown on the computer screen overlaid on the actual street network. This new
capability motivated a change in the design of routing packages to enable the experienced
manager to contribute to the design and modification of the final routes. No mathematical
model can capture all aspects of a complex problem. Thus, the need to modify a solution
to account for something not explicitly included in the model is not uncommon. PC based
systems have enabled managers to easily adjust the final routes.
The Chinese Postman Problem (CPP) is a close cousin to TSP. In this routing problem
the traveler must traverse every arc (i.e. road link) in the network. The name comes from
the fact that a Chinese mathematician, Mei-Ko Kwan (1962), developed the first
algorithm to solve this problem for a rural postman. It is an extension to one of the
earliest graph theory questions, the Königsberg Bridge Problem, which was studied by
Euler (1736). The Pregel River runs through the city of Königsberg in Germany. In a city
park seven bridges cross branches of the river and connect two islands with each other
and with opposite banks of the river. For many years the citizens of Königsberg tried to
take walks that took them over each bridge once without retracing any part of their path.
Euler was able to prove that such a walk is impossible. In general, graph theorists are
interested in understanding whether or not a circuit exists that does not require traversing
the same arc twice. Operations researchers are interested in finding the shortest route in
any type of network.
The Chinese Postman class of problems is relevant to a number of other services.
Garbage collection, street sweeping, salting or gritting of icy roads, and snow plowing are
some of the other services for which vehicle routing algorithms have been applied. Meter
readers also must travel up and down every street. Checking roads for potholes or serious
deterioration or checking pipelines for weak spots also fall into this class of problems.
In the ever complex real-world additional constraints can arise that complicate the search
for efficient routes. Labor contracts may require that the routes of different drivers must
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 3
be approximately of equal length. There may be significant time restrictions or time
windows on when a vehicle must visit a specific location to make a delivery or pick-up.
The vehicle such as a garbage truck making pick-ups may also have capacity limitations
which would restrict the maximum length of a route. Uncertainty can also complicate
route planning. Trucks that deliver gasoline or oil can‘t be sure when they set out as to
how much they will have to pump into each of the tanks on their route.
Planning routes is just one piece of the decision making puzzle that a transportation
manager must put together. The manager must also make decisions as to the size of the
fleet, the location of depots or landfills, the size and type of vehicles.
There are dozens of commercial software packages to aid in routing and scheduling
vehicles. A generic website that can lead the reader to many packages for solving such
problems can be found at http://www.transportweb.com/software.html. Examples of
specific software packages can be found at: http://www.optrak.co.uk/ and
http://www.navesinklogistics.com/routing.html.
Reference: Bodin, Lawrence D., (1990), ―Twenty Years of Routing and Scheduling,‖
Operations Research, 38:4, 571-579.
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 4
Objectives of the Module
Students will use algorithms to find optimal or ―near optimal‖ solutions to
routing problems involving Hamiltonian circuits.
Students will analyze the efficiency of brute force and heuristic algorithms.
They will explore the increase in computations as the problem size grows.
They will develop a formula for the number of computations.
Students will analyze the effectiveness of different algorithms.
They will compare the results of different heuristics.
They will learn about the role of choosing different starting points in a
heuristic.
They will come to understand why near optimal solutions are accepted in
certain circumstances.
Students will explore the tradeoff between efficiency and effectiveness of
algorithms.
Initiating Activity
Routing is a process used to find the best way to sequence a number of stops or
destinations. The one-way route is described as a path and the round trip is termed a
circuit. Mathematicians have worked on many methods or algorithms to optimize the
route. The criterion for determining a best route depends upon the user‘s needs. Some of
the usual criteria are cost, time, distance, ease of travel and personal preference.
Have a discussion on the best way to complete the following list of errands on one trip.
1) The post office
2) The bank
3) The video store and
4) The grocery store
Assuming you have a limited amount of time, what issues would you consider in
deciding the order to complete the errands?
Here is a list of things that your students might raise.
The distances between locations
The travel times between locations
Will they be driving from location to location or drive to one spot and walk from
location to location? If you park and walk, carrying groceries to the car becomes
an important consideration. If finding parking at each location takes time there is
a tradeoff between driving and walking between locations.
If the trip will take an extended period of time, you may want to consider the time
of day that you arrive at different locations.
This module focuses on the route or sequence of visits. It is important that you discuss
the distances and/or travel times between locations. You may want to construct a
complete network that displays the distances and/or travel times between every pair of
errand locations.
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 5
Teaching Notes
In a 5-node network, beginning at a specified node, there will be 24 Hamiltonian circuits
that end at the same node. However, 12 of the 24 are redundant, because they merely
traverse the network in the opposite direction. Cost, mileage, etc. would be unaffected by
the reverse order. Thus, in questions 1 and 2, students are asked to generate all 24
circuits beginning and ending in Washington. Then, the intent of questions 3-7 is that
students discover that half of the circuits are redundant.
The optimal solution need not be a Hamiltonian circuit but is in this case. For a graph
with just the three nodes S, C, and P, the optimal route starting at S goes from S to C to P
and then retraces the route backwards rather than flying directly from P to S. The triangle
inequality does not hold for these data, which is not surprising for airline ticket prices.
The brute-force method always uncovers the optimal solution. Questions 8 and 9 ask
students to compute the cost of each unique (non-redundant) circuit and identify the
optimal (cheapest) route.
Questions 10-15 are intended to help students generalize a formula for the total number
of unique circuits that start at a specific node, pass through every other node, and return
to the starting point. If students are not familiar with factorials and factorial notation, you
may want to consider introducing those features at this point. Students will first deduce
in question 15 that in a network containing n nodes there are (n – 1)! Hamiltonian circuits
beginning and ending at a specified node. Refer back to the result in question 7 to deduce
that there are only (n – 1)!/2 unique circuits in the general case.
The point of questions 17-21 is two-fold. First, we would like students to understand
how problems of this nature quickly grow in size. Second, we introduce the students to
the idea that even fast computers using brute force cannot completely solve certain types
of combinatoric problems, even ones that do not seem unduly large. The twenty-one city
problem in question 19 does not seem large but the total number of route is
unmanageable. In practice, there are numerous traveling salesman problems involving a
lot more nodes. Therefore, while the brute-force method will always yield the optimal
solution, it is not always feasible to use brute force. Question 21 demonstrates the
impracticality of brute force. In addition, Students get experience in converting units and
develop a concrete understanding of a problem with very large numbers. A discussion
about the "best solution" versus the "optimal solution" might ensue. In practice
companies are usually satisfied to find a very good solution, or an improved solution,
rather than investing time and money to find ―the optimal solution.‖
Questions 22-26 are used to develop a solution strategy that does not use brute force.
The addition of just one city to the five-city network increases the number of non-
redundant circuits that would have to be checked by brute-force from 12 to 60. Hence, a
different algorithm which might generate only a near-optimal solution is introduced. In
Extensions 1 and 2, two additional algorithms will be developed in the context of this
same problem situation.
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 6
Extension 1: Repetitive Nearest – Neighbor
One method used to improve upon the basic algorithm is called the "Repetitive Nearest -
Neighbor " Algorithm.
Repetitive Nearest - Neighbor Algorithm
1. Select any node as a starting point. Apply the nearest-neighbor algorithm
from that node.
2. Calculate the cost of that circuit.
3. Repeat the process using each of the other nodes as the starting point.
4. Choose the "best" Hamiltonian Circuit.
1. Apply the Repetitive Nearest – Neighbor Algorithm to the original Outel
Semiconductor scenario. (Do not include Columbus.)
P
C 98
65
74
165
114
105
S W
104
113
149
76
A
2. What is your criterion for the ―best‖ circuit?
3. How does this improve upon your Nearest – Neighbor result?
4. When would the Repetitive – Nearest Neighbor method be useful?
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 7
5. Fill in the following chart:
Brute Force Nearest-Neighbor Repetitive N-N
Strengths
Weaknesses
When to use
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 8
Extension 2: Triangle Insertion
A situation may occur when a node is added to the original network and you are forced to
re-evaluate your circuit. An algorithm that allows you to efficiently tackle this problem is
called the Triangle Insertion Algorithm. To use this algorithm, you begin by linking the
new node to two nodes in the original circuit that are directly linked to each other and
then eliminating the direct link. The length of the new circuit is found by adding the sum
of the lengths of the two new links to the original circuit length and subtracting the length
of the direct link that was eliminated. The process is repeated for each possible pair of
directly linked nodes in the original circuit, and the shortest resulting circuit is selected.
Triangle Extension Algorithm:
1. Begin with a Hamiltonian circuit for the original problem.
2. Choose a pair of directly linked nodes and link the new node to each of them,
while eliminating the old link between them. Calculate the length of the new
circuit by adding the sum of the lengths of the two new links, less the length of
the old link they replace, to the original circuit length.
3. On the original network, repeat the process by inserting the new node between
every pair of nodes that are directly linked in the original Hamiltonian circuit.
4. Choose the new circuit with the shortest length.
A
Example: A new node, X, can be added 11
to an existing circuit by linking it to two nodes,
A and B, that are already linked in the existing
circuit. In the new circuit, the edge AB will be
replaced by the pair of edges AX and XB. Now, 15 X
if the old circuit had a length of L, the length of
the new circuit is L + (11+12-15).
12
B
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 9
The diagram below shows the addition of Columbus to the Outel recruitment network.
Columbus and the associated travel costs are highlighted in boldface in the diagram. The
original optimal circuit is also bolded.
P
C 98
65 88 79 74
Co
165 114
110 99
105
S W
104 121
113
149
76
A
Apply the Triangle Insertion Algorithm to the modification of the Outel Semiconductor problem that
includes the addition of Columbus to the network.
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 10
Case Write-Ups:
Routing Special -Education School Buses
In routing special-education students in an urban environment, the students must be
picked up at home and delivered to selected schools which meet their specific educational
needs. This is called a many-to-several routing problem. (Many students are picked up in
one bus and transported to several distinct educational programs.) In addition to this
problem structure, special sequencing restrictions and route duration limitations exist.
Heuristics can achieve significant savings for both route distance and route duration, and
a shuttle system is also found to be effective.
The Tulsa, Oklahoma public school system determined bus routes for about 850 special
education students in 66 schools. The students not only attend special schools, but also
need special buses due to a variety of disabilities. For example, different types of buses
are needed to accommodate students in wheel chairs. Special education students within
the same neighborhood often attend different schools, thus further complicating the
problem. Route planners were constrained by a 45 minute travel time limit and school
hours varied from school to school. Three strategies were applied to solve the problem of
routing the special education buses. Bus to school, where one bus picks up all students
going to the same school. Home to school to school, where students took a bus to a
nearby school and were transferred onto another bus for the duration of their ride.
Finally, school to meeting point to school, where students were shuttled to a vantage
point and picked up by another bus for the duration of the trip. Using routing methods,
the Tulsa public school system was able to save time and money, although drivers were
sometimes unhappy that wages were cut due to fewer hours of driving. Based on sample
studies, it was estimated that the routing algorithms could reduce miles traveled by
almost 11% and time spent in route by almost 16%. This would translate into an
estimated $50,000 to $100,000 in savings if the routing algorithms were used for all
special-education busing in Tulsa.
Russell, Robert A. and Reece B. Morrel, (1986), ―Routing Special -Education School
Buses.‖ Interfaces, 16:5, 56-64.
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 11
Sears Repair and Home-Delivery Dispatching Problems
Sears, Roebuck and Company uses a vehicle-routing and scheduling system coupled with
geographic information system (GIS) to run its delivery and home service fleets more
efficiently. Operations research consultants providing transportation and logistics
services constructed a series of algorithms for Sears: 1) an algorithm to build an origin-
and-destination matrix, 2) an algorithm to assign resources, and 3) algorithms to perform
sequencing and route improvement.
Sears ―logistics services‖ manages a U. S. fleet of over 1,000 delivery vehicles to bring
the products they sell to the customer‘s location. When a customer asks for a delivery,
Sears determines the day and estimated time window based on customer preference and
the delivery schedule in the area where the customer is located. One day before delivery,
Sears creates the delivery routes based on types and quantities of merchandise, available
vehicles, and customer time windows. The routing managers attempt to provide
customers with accurate and convenient delivery time windows, minimize operational
costs, and give drivers consistent routes.
Sears ―product services‖ operates a U. S. fleet of 12,500 service vehicles. They are driven
by service technicians, who repair and install appliances, as well as provide home
improvements and other homeowner services. When a customer calls a Sears service
center, the customer representative assigns a service date and time window based on the
customer‘s preference and the work schedule in the customer‘s area. One day before the
service date, the regional office builds service routes based on customer requests, the
availability of technicians, their skills, and their work schedules. However, these routes
may be revised to accommodate emergencies or changes in a technician‘s work
schedules. Sears service centers attempt to plan routes that maximize the completion of
service calls on the first visit, minimize operational costs, and enhance customer
satisfaction.
The purpose of the new delivery and service systems that were developed was to enhance
Sears existing delivery and product services by consolidating operations, improving
services, and reducing costs. The implementation of the new system has resulted in
customer satisfaction rates of above 80% for both delivery and service, as well as annual
savings of $42 million.
Weigel, D. & Cao, B. (1999), ―Applying GIS and OR Techniques to Solve Sears
Technician-Dispatching and Home-Delivery Problems.‖ INTERFACES, 29:1, 112-130.
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 12
Delivering Petroleum Products to Customers
The oil industry spends billions of dollars annually on the distribution of petroleum
products. It is estimated that these costs alone add 4 cents to the cost of a gallon of
gasoline in the U. S. With an annual volume in 1995 of 74 billion gallons, that segment
alone accounts for close to $3 billion annually. Dispatching ―oil‖ products includes
determining sources, destinations, timing, composition, and size of shipments, assigning
transportation modes, and finally assigning individual transportation units. Dispatching
―petroleum‖ products involves considering transportation and product-source costs,
operating rules, inventory considerations, customer service policies, and other factors.
Set partitioning-based optimization models have emerged as the most viable optimization
approach that can adequately address the complexities of these transportation dispatching
problems. However, set partitioning models have been hard to solve optimally for the
problem sizes typically encountered in daily operations. The rapid development of
computing power, combined with the development of ever more efficient algorithms, has
facilitated the recent emergence of set-partitioning-based optimization models in
transportation dispatching systems.
A dispatching system consists of models and algorithms, together with user interfaces for
the input and output sides, as well as databases and data management routines.
Dispatching is often the act of balancing multiple objectives. The primary objective is
usually minimizing delivery cost. Additional objectives may include balancing the
workload among transportation units, minimizing the number of violations of service
guidelines, and determining the proper quantity to ship at any given time. However,
even the minimization of total cost is not always a simple objective to meet.
An effective dispatching system should account for differences among available
transportation units (size, cost, type of equipment, etc.), because a company rarely uses a
uniform fleet. Due to the numerous considerations involved in dispatching, some of
which are unforeseen and therefore cannot be programmed into the dispatching system,
the system should be designed to support, not replace, the human dispatcher. Manual
overrides must be built into an effective dispatching system, and the dispatching should
be able to see the cost impact of any overrides that are made. This capability is probably
the greatest contribution of computerized dispatching systems.
Significant progress was made in the 1990s in dispatching products in the oil industry. In
some cases, mathematically optimal dispatches are now a reality, while in others only
good solutions, with known bounds on just how good, are possible. The next step in
development will be integrated solutions to dispatching problems that involve both
inventory and transportation. The rapid development of computing power, together with
the continued development of efficient algorithms, is expected to lead to the solution of
such problems in the not too distant future.
Ronen, D. ―Dispatching Petroleum Products (1995),‖ Operations Research, 43:3, 379-
387.
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 13
Metelco, S. A. - Greek Manufacturer of Printed Circuit Boards
Metelco S. A. is a manufacturer of low-volume printed circuit boards. It is located in
Athens, Greece. In order for this small business to succeed, it needed to find a way to
make timely deliveries without sacrificing its high quality product. In a study of its
manufacturing process it found a major production bottleneck in one of the last stages of
manufacturing. It was taking too long to drill the positions for the pins where electronic
components are soldered onto the board.
The drill had to make an average of 500 holes on a circuit board. This whole process
could take 1 hour for each board. Much of the time was wasted time moving the drill
head from spot to spot before commencing to drill. In addition, for each unique board,
Metelco had to design a separate program that sequenced the locations to drill and then
transfer that program to their programmable drilling machine. The programs were
haphazard in their design and were not efficient.
The sequencing of locations to drill is a classic traveling salesman problem. The optimal
solution for a problem involving hundreds of holes is difficult to find in a reasonable
timeframe. Therefore, Metelco sought an efficient TSP heuristic that would provide good
solutions in a reasonable amount of time.
At Metelco, the drilling machine addresses the circuit board as an x-y plane. Two
different motors operating independently control movement. One controls movement in
the x direction and the other controls the y direction. The time required to move from
(x1, y1) to (x2, y2) at velocity v is given by the maximum of the two directional travel
times:
T = max(|(x1 - x2|, | y1 - y2|)/ v.
The Triangle Extension Algorithm was used for this process. Initial algorithm design
and computer codes proved out the concept but were not efficient. They took 16 hours to
solve a 500 node TSP. Efficient coding of these algorithms reduced the solution time to
five minutes.
The use of a TSP algorithm increased the machine‘s drilling rate from 500 drilled holes
per hour to a practical capability of 4800 drilled holes. Some of this improvement was
counterbalanced by the extra time needed for programming the computer to solve the
TSP. In total, the net effect was a 10% increase in throughput, elimination of operator
time to draw routes and a reduction in certain types of errors such as multiple drillings of
the same hole. This produced a more reliable manufacturing operation and reduced the
workload of operators. The software was packaged and marketed as OPTDROME and
targeted for companies with less expensive old machines. New drilling machines for PCB
manufacture have optimizers built into the equipment.
Magirou, V. F., (1986), ―Efficient Drilling of Printed Circuit Boards,‖ Interfaces 16:4 13-
23.
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 14
Homework Problems
Problem 1
A traveling salesman is visiting several cities. To save time, the salesman chooses to
travel by airplane. His home base is in Burlington, Vermont and he needs to visit each
city exactly once. The cities are Burlington, VT, Portland, ME, Boston, MA, Newark, NJ
and Albany, NY. The fares are as follows (the fare is the same for a return flight):
Burlington to Portland is $170
Burlington to Boston is $165
Burlington to Newark is $210 Burlington
Portland
Burlington to Albany is $160 Albany
Portland to Albany is $150 Boston
Newark
Portland to Newark is $310
Portland to Boston is $60
Boston to Newark is $240
Boston to Albany is $120
Albany to Newark is $80
1. Use a map of the United States to make a visual representation of the route.
2. Find the Hamiltonian circuit with the lowest cost using the Brute Force algorithm.
Keep track of the time it takes to execute this algorithm. (Computations may be done
with a computer or calculator.)
3. Now use the Nearest - Neighbor algorithm to find a solution. Keep track of the time
it takes to execute this algorithm.
4. Compare the results and effort needed with the two algorithms.
5. Which method would you choose? Why?
6. How would the situation change if you had 10 cities to visit?
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 15
Problem 2
Ms I. Care has just been hired by the Global Insurance Agency to manage the Midwest
Regional Office in Chicago, IL. At present the region has offices in Chicago, Toledo,
OH, Lexington, KY, and St. Louis, MO. Ms. Care must visit each office once each
quarter. Beginning in Chicago, she drives to Toledo, then on to Lexington, St. Louis, and
back to Chicago, as shown on the map below. The company plans to add representatives
in Indianapolis, IN, Champaign—Urbana, IL, and Ft. Wayne, IN. The plan is to add one
city in the order listed during each of the next three quarters so the region will be
complete by the end of the year.
a) Use the Triangle Extension Algorithm to find the best way Ms. Care can insert
Indianapolis into the existing circuit given below.
b) Next, use the Triangle Extension Algorithm to find the best way to insert
Champaign—Urbana into the circuit you found in answer to part (a).
c) Finally, use the Triangle Extension Algorithm to find the best way to insert Ft.
Wayne into the circuit you found in answer to part (b).
250
C
T
148 104
136
183
FW
306 C-U
120
119
184 287
I 237
251
183
S
364
L
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 16
Project Ideas
1. Students will use the library and/or the internet to investigate how routes are
developed in a number of contexts. Candidates for study are school bus runs, pizza
delivery routes, traveling salesman, and routes of security personnel either in a
building or over a defined region.
2. Students will break up into groups of no more than 4 students per group. Each group
will select one of the applications suggested or select one of its own with teacher
approval. Students will make appointments with the company involved in their
application. Student will write a series of comprehensive questions to be posed at the
interview. The teacher will review the questions and make suggestions for
improvement. Once the questions are complete and approved, the students will
complete the interview, write a report base upon what they have learned, and present
the report to the class. The students will include in their report a critique of the
routing method employed by the company. Students should be guided to ask
questions regarding a) constraints on creating routes, b) frequency in which new
routes have to be created, c) the use of geographic information systems (computerized
mapping) and d) how long have they been using the current process.
3. Students will read the synopsis of case study on routing of special education school
buses. Students will obtain information on bussing in their district and create a route
using the nearest neighbor algorithm in this unit. Students will then try to improve on
their initial route.
4. Students will utilize the library or internet to find other algorithms that have been
used to address traveling salesman problems.
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 17
Solutions
Student Activity
Outel Semiconductor’s Recruiting Circuit: Finding the Cheapest Route
Mr. Ira Cruit works in the human resource department of Outel Semiconductor. His
office is in the Washington, DC area. He has the responsibility for recruiting top notch
graduating seniors from 1) Carnegie-Mellon, in Pittsburgh, PA, 2) Northwestern
University in a suburb of Chicago, IL, 3) Washington University in St. Louis, MO, and 4)
Georgia Tech, in Atlanta, GA. He plans to visit them in one four-day period and return
home to Washington DC. Below is a map showing the cheapest available one-way fares
between every possible pair of cities in either direction. Mr. Cruit wants to determine the
cheapest total travel cost for his trip.
P
C 98
65
74
165 114
105
S W
104
113
149
76
A
The figure above is called a network. A Hamiltonian Path is a path that visits every
stop or node exactly once. If this path returns to the starting point, making a closed loop,
then the path is a Hamiltonian Circuit. Mr. Cruit‘s problem involves finding a route
starting at W passing through every other node exactly once and returning to W, creating
a Hamiltonian Circuit. (The optimal solution need not always be a Hamiltonian circuit
but it is in this case. If you only had the three nodes S, C, and P, the optimal route starting
at S would entail going from S to C to P and then retracing the route backwards rather
than flying directly from P to S. The triangle inequality does not hold for this data. This is
not necessarily surprising given the nature of airline ticket prices.)
One method Mr. Cruit can use to find the cheapest itinerary is brute force. He can list
and then calculate the cost of every possible Hamiltonian circuit. Let‘s create the list in a
systematic fashion to be sure that we consider every possible circuit.
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 18
Circuit # Start 1 2 3 4 Return Circuit Total Cost
Sequence
1 W P C S A W WPCSAW 74+98+65+149+76 = 462
2 ― ― ― A S ― WPCASW 74 + 98+104+149+105=530
3 ― ― S A C ― WPSACW 74+165+149+104+114=606
4 ― ― ― C A ― WPSCAW 74+165+65+104+76=484
5 ― ― A S C ― WPASCW 74+113+149+65+114=515
6 ― ― ― C S ― WPACSW 74+113+104+65+105=461
7 ― C P S A ― WCPSAW 114+98+165+149+76=602
8 ― ― ― A S ― WCPASW 114+98+113+149+105=579
9 ― ― S P A ― WCSPAW 114+65+165+113+76=533
10 ― ― ― A P ― WCSAPW 114+65+149+113+74=515
11 ― ― A S ― ― WCASPW 114+104+149+165+74=606
12 ― ― ― P S ― WCAPSW 114+104+113+165+105= 601
13 ― S C P A ― WSCPAW 105+65+98+113+76=457
14 ― ― ― A P ― WSCAPW 105+65+104+113+74=461
15 ― ― P C A ― WSPCAW 105+165+98+104+76=548
16 ― ― ― A C ― WSPACW 105+165+113+104+114=601
17 ― ― A P ― ― WSAPCW 105+149+113+98+114=579
18 ― ― ― C P ― WSACPW 105+149+104+98+74=530
19 ― A P C S ― WAPCSW 76+113+98+65+105=457
20 ― ― ― S C ― WAPSCW 76+113+165+65+114=533
21 ― ― C P S ― WACPSW 76+104+98+165+105=548
22 ― ― ― S P ― WACSPW 76+104+65+165+74=484
23 ― ― S P C ― WASPCW 76+149+165+98+114=602
24 ― ― ― C P ― WASCPW 76+149+65+98+74=462
1. Complete circuits 8 through 12 by placing node letters in columns 2, 3 and 4. Each of
the circuits will start with WC and return back to W. Record the circuit sequence.
2. Repeat step 1 for circuits numbered 13 through 18. (Start each of the circuits with
WS.)
Repeat step 1 for circuits numbered 19 through 24. (Start each of the circuits with
WA.)
3. Among the list of circuits numbered 8 through 12, you should have identified a circuit
WCSAPW. If you travel this circuit in reverse order, what circuit would it be?
WPASCW. Where in the list does this circuit already appear? Circuit 5
4. A complete circuit can be traveled in either direction and the two circuits are
equivalent. Find any other duplicate circuits among the list of circuits 8 through 12.
Cross out each of the duplicates in the table. There is only one more duplicate
WCASPW.
5. Repeat step 4 for circuits 13 through 18. List of Duplicates is anything that ends in
PW or CW; WSCAPW, WSACPW, WSPACW, WSAPCW.
Repeat step 4 for circuits numbered 19 through 24. All of these circuits are
duplicates.
6. How many unique circuits remain? 12 How many circuits were originally
created? 24
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 19
7. How does the number of circuits compare to the number of unique circuits? one-
half
8. The total cost of the circuit is $462 and its calculation is recorded in the table.
Calculate and record in the table the cost of the remaining circuits.
9. Which circuit would be the cheapest? WSCPAW What is its cost? $457
The brute force method involves identifying every unique circuit. It is important to
understand the relationship between the number of nodes and the number of unique
circuits. Let‘s begin developing a formula that represents this relationship.
10. How many nodes can you travel to from W? 4
11. After you have chosen the second node in your circuit, how many choices are there
for the third node in the circuit? 3
12. Continuing this approach, how many choices are available for the fourth node in a
circuit? 2
How many choices are available for the fifth node in a circuit? 1
13. Based on the answers to questions 10, 11 and 12, how many possible circuits can be
created? 4 x 3x 2 x 1 =24
14. Based on the answers to questions 6 and 7 above, what fraction of circuits is unique?
one-half Why does this fraction make sense? Each circuit can be traveled in 2
directions.
15. In general, if the complete network contains ‗n‘ nodes, write a formula in terms of ‗n‘
for the total number of circuits that can be created starting at point W.
(n-1)(n-2)(n-3) … (1) = (n-1)!
16. Recall that we discovered that some of the circuits were duplicates. Adjust the
formula to account for these duplicates. (n-1)!/2
17. Suppose there were six cities. Use the formula to calculate the number of unique
circuits. (5)(4)(3)(2)(1)/2=60
18. What if there were seven cities? (6)(5)(4)(3)(2)(1)/2=360
19. What if there were twenty-one cities? 1.21 x 1018
20. What do your answers to 18 and 19 suggest about the brute force method? The
number of computations increases dramatically.
21. A high-speed computer can do approximately 1 billion (1x109) computations per
second. If you use the Brute Force Method, find the length of time it would take the
computer to accomplish this task.
1.21 x 1018 computations/second /(1 x 109 x 60 sec x 60 min x 24 hrs x 365 days) ~
38 years
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 20
Operations researchers have developed algorithms to find low-cost routes through a
network without using brute force. One method is called the "Nearest-Neighbor
Algorithm".
Nearest - Neighbor Algorithm
1. Choose a node as your starting point.
2. From that starting node, travel to the node for which the fare is the cheapest. We call this node
the "nearest-neighbor". If there is a tie, choose one arbitrarily.
3. From the "nearest-neighbor" repeat step 2. Consider only nodes that have not yet been visited.
Continue this process until all nodes have been visited.
4. Complete a Hamiltonian Circuit by returning to the starting point.
5. Calculate the cost of the circuit.
A new executive just joined the firm, and she is an alumna from the Ohio State
University in Columbus, Ohio. She suggested to Mr. Ira Cruit that he include a visit to
Ohio State on his recruiting trip. The diagram below includes Columbus in the network,
along with the associated travel costs to each of the other cities in the network. Recall
that the optimal solution to the original problem involves flying first from Washington,
D.C. to St. Louis.
P
C 98
65 88 79
74
Co
165 114
110 99
105
S W
104 121
113
149
76
A
22. Consider a minor modification to the original best route WSCPAW. Instead of flying
directly from Washington to St. Louis, consider traveling first to Columbus and then
on to St. Louis. What is the name of this new route? WCoSCPAW
23. What is the cost of the new route? It would cost $561.
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 21
24. Use the Nearest – Neighbor Algorithm to find a cost efficient route for Mr. Ira
Cruit‘s trip starting and ending in Washington, D.C. and include a visit to Columbus.
See above graph. WPCoCSAW. In this case the starting point is not arbitrary. The
trip must begin and end in Washington, D.C.
25. What is its total cost? 531
26. Why does using the Nearest – Neighbor Algorithm make more sense than using the
Brute Force Algorithm in this case? With the addition of Columbus the number of
distinct routes increases from 12 to 60. This point was made in question 17.
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 22
Extensions
Extension 1: Repetitive Nearest – Neighbor
Other methods are used to improve upon our two Algorithms. We can begin by applying
what is called the "Repetitive Nearest - Neighbor " Algorithm.
Repetitive Nearest - Neighbor Algorithm
1. Select any node as a starting point. Apply the nearest-neighbor
algorithm from that node.
2. Calculate the cost of that circuit.
3. Repeat the process using each of the other nodes as the starting point.
4. Choose the "best" Hamiltonian Circuit.
1. Apply the Repetitive Nearest – Neighbor Algorithm to the original Outel
Semiconductor scenario. (Do not include Columbus.)
a) Start at ―W‖ WPCSAW=74+98+65+149+76 = 462
b) Start at ―P‖ PWACSP= 74+76+104+65+165 = 484
c) Start at ―C‖ CSWPAC= 65+105+74+113+104 = 461 (best solution)
d) Start at ―A‖ AWPCSA= 76+74+98+65+149 = 462
e) Start at ―S‖ SCPCWAS = 65+98+74+76+149 = 462
Note: The cheapest solution is CSWPAC (which we can rewrite as WPACSW).
Notice, the repetitive nearest neighbor algorithm starting at different nodes,
produced circuits ―a‖, ―d‖ and ―e‖ which were identical but were not optimal. In
addition, if your starting city had been Pittsburgh and you applied just a nearest
neighbor algorithm with no repetition, the generated solution would have been
significantly worse than the optimal.
2. What is your criterion for the ―best‖ circuit?
We are using ―cheapest‖ as the criterion for ―best.‖
Note to the teacher: In practice, a manager would need to weigh the cost of
computer time and employee time used to find an optimal solution against the
cost of the trip. It is not cost effective to spend $1000 to determine the ―best‖
solution if the best solution saves only $100.
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 23
3. Does the Repetitive Nearest – Neighbor Algorithm yield the best solution?
No, but the optimal solution is only $4 cheaper. Remember the optimal circuit
was WSCPAW with a cost of $457.
4. When would the Repetitive – Nearest Neighbor method be useful?
When you need a very good solution quickly. The repetitive nearest neighbor
algorithm will usually provide a near optimal solution. Notice that if there are
―n‖ nodes in the network, this algorithm requires repeating the nearest neighbor
algorithm ―n‖ times. Sometimes, as in this case, the improvement from 462 to
461 may not be worth the extra effort.
5. Fill in the following chart:
Brute Force Nearest-Neighbor Repetitive
Nearest-Neighbor
Always produces Very quick. Can Quicker than Brute
optimal solution. provide quick result, Force and should
Strengths even with many nodes. provide better
solution than
Nearest-Neighbor.
Time-consuming Solution may be poor Solution is likely to
and may not be relative to optimal and be near optimal and
Weaknesses practical when dependent on starting is not dependent on
there are many point. starting point.
nodes.
When costs are When a route is When you need a
extremely needed immediately. very good solution
When to use important and quickly.
saving even a
small amount is
critical.
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 24
Extension 2: Triangle Insertion Algorithm
The diagram below shows the addition of Columbus to the Outel recruitment network.
Columbus and the associated travel costs are highlighted in boldface in the diagram.
P
C 98
65 88 79 74
Co
165 114
110 99
105
S W
104 121
113
149
76
A
Apply the Triangle Insertion Algorithm to the modification of the Outel Semiconductor
problem that includes the addition of Columbus to the network. Begin with the original
best route highlighted in bold WSCPAW = 457
Insert Co between W and S WCoSCPAW=457+(99+110-105) = 561
Insert Co between S and C WSCoCPAW=457+(110+88-65) = 590
Insert Co between C and P WSCCoPAW=457+(88+79-98) = 526 (best solution)
Insert Co between P and A WSCPCoAW=457+(79+121-113) = 544
Insert Co between A and W WSCPACoW=457+(121+99-76) = 601
Notice there are significant differences between the alternative insertion points.
Even the second best insertion point is $18 or 3% worse than the best solution found
by the Triangle Insertion Algorithm.
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 25
P
C 98
65 88 79 74
Co
165 114
110 99
105
S W
104 121
113
149
76
A
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 26
Homework Answers
Problem 1
A traveling salesman is visiting several cities. To save time, the salesman chooses to
travel by airplane. His home base is in Burlington, Vermont and he needs to visit each
city exactly once. The cities are Burlington, VT, Portland, ME, Boston, MA, Newark, NJ
and Albany, NY.
The fares are as follows (the fare is the same for a return flight):
Burlington to Portland is $170
Burlington to Boston is $165
Burlington
Burlington to Newark is $210
Portland
Burlington to Albany is $160 Albany
Boston
Portland to Albany is $150
Newark
Portland to Newark is $310
Portland to Boston is $60
Boston to Newark is $240
Boston to Albany is $120
Albany to Newark is $80
1. Use a map of the United States to make a visual representation of the network. (Note:
the optimal solution is also shown.)
Burlington
$170
$160
Portland
$150
Albany
$165
$60
$120
$80 Boston
$310
$210
$240
Newark
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 27
2. Find the Hamiltonian circuit with the lowest cost using the Brute Force algorithm.
Keep track of the time it takes to execute this algorithm. (Computations may be done
with a computer or calculator.)
BuPABoNBu = 170 + 150 + 120 + 240 + 210 = $890
BuPBoANBu = 170 + 60 + 120 + 80 + 210 = $640 (best solution)
BuPANBoBu = 170 + 150 + 80 + 240 + 165 = $805
BuPNABoBu = 170 + 310 + 80 + 120 + 165 = $845
BuPNBoABu = 170 + 310 + 240 + 120 + 160 = $1000
BuPBoNABu = 170 + 60 + 240 + 80 + 160 = $710
BuABoPNBu = 160 + 120 + 60 + 310 + 210 = $860
BuAPBoNBu = 160 + 150 + 60 + 240 + 210 = $820
BuANPBoBu = 160 + 80 + 310 + 60 + 165 = $775
BuNAPBoBu = 210 + 80 + 150 + 60 + 165 = $665
BuNPABoBu = 210 + 310 + 150 + 120 + 165 = $955
BuBoNPABu = 165 + 240 + 310 + 150 + 160 = $1025
3. Now use the Nearest - Neighbor algorithm to find a solution. Keep track of the time
it takes to execute this algorithm.
The nearest neighbor algorithm generated the solution BuANBoPBu at a cost $710.
4. Compare the results and effort needed with the two algorithms.
The nearest neighbor algorithm found the third best solution which is $70 or 10%
worse than the optimal solution. It should have taken the students significantly longer
to execute the brute force algorithm as compared to the nearest neighbor algorithm.
5. Which method would you choose? Why?
Ask the students whether or not the extra effort was worth saving $70.
6. How would the situation change if you had 10 cities to visit?
With the brute force algorithm, there would be 9!/2 = 181,440 circuits to evaluate.
Thus, it would no longer be practical to use Brute Force if the computations are done
by hand.
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 28
Problem 2
Ms I. Care has just been hired by the Global Insurance Agency to manage the Midwest
Regional Office in Chicago, IL. At present the region has offices in Chicago, Toledo,
OH, Lexington, KY, and St. Louis, MO. Ms. Care must visit each office once each
quarter. Beginning in Chicago, she travels to Toledo, then on to Lexington, St. Louis, and
back to Chicago, as shown on the map below. The company plans to add representatives
in Indianapolis, IN, Champaign—Urbana, IL, and Ft. Wayne, IN. The plan is to add one
city in the order listed during each of the next three quarters so the region will be
complete by the end of the year.
a) Use the Triangle Extension Algorithm to find the best way Ms. Care can insert
Indianapolis into the existing circuit given above.
CTLSC=250+287+364+306=1207
CITLSC=1207+(183+120+104-250) = 1364
CTILSC=1207+(120+104+183-287) = 1327
CTLISC=1207+(183+251-364) = 1277 (best solution)
CTLSIC=1207+(251+183-306) = 1335
250
C
T
148 104
136
183
FW
306 C-U
120
119
184 287
I 237
251
183
S
364 L
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 29
b) Next, use the Triangle Extension Algorithm to find the best way to insert
Champaign—Urbana into the circuit you found in answer to part (a).
CTLISC=1277
CTLIC-USC=1277+(119+184-251) = 1329
CTLISC-UC=1277+(184+136-306) = 1291 (best solution)
Note: Champaign—Urbana only has direct links to Indianapolis, St. Louis,
and Chicago. Therefore, it may only be inserted into the previous circuit
between Indianapolis and St. Louis or between St. Louis and Chicago.
250
C
T
148 104
136
183
FW
306 C-U
120
119
184 287
I 237
251
183
S
364
Outel Semiconductor’s Recruiting Circuit: Teacher Resources 30
c) Finally, use the Triangle Extension Algorithm to find the best way to insert Ft.
Wayne into the circuit you found in answer to part (b).
CTLISC-UC=1291
CFTLISC-UC=1291+(148+104-250) = 1293 (best solution)
CTFLISC-UC=1291+(104+237-287) = 1345
CTLFISC-UC=1291+(237+120-183) = 1465
Note: Due to its limited number of links, Ft. Wayne may only be inserted
between Chicago and Toledo, Toledo and Lexington, or Lexington and
Indianapolis.
250
C
T
148 104
136
183
FW
306 C-U
120
119
184 287
I 237
251
183
S
364